Az, hogy a hely (ek) leállás nélkül, és adatvesztés közötti dedikált szerverek, savepearlharbor

Úgy tűnik, hogy bonyolult, hogy mozog a helyén egy másik szerverre? Valószínűleg sokan másolták az első houmpeydzhi tárhely Hosting egy jobb, miközben a középiskolában vagy az első egyetemi kurzusok. Vagy lóg a füle tészta vezetésével, kifejtette, hogy ez a probléma nem oldódott meg azonnal, a helyszínen napi nem fog működni, mert a DNS egy olyan dolog ...

  • másolat fájlokat
  • Készítsen adatbázist gátak
  • Nagyítás az új szerveren
  • A régi szerver helyett minden csatlakozni az adatbázishoz, hogy az új
  • DNS konfigurálása
  • ...

Mennyibe kerül ez a folyamat? Az oldal nem fog sok értékes percet \ nem működik rendesen?

Valahogy nem találtunk cikkeket Habré, ezért úgy döntöttem, hogy írjon egy pár trükköt, hogyan mozog az esetlen tervezés vagy több, úgy, hogy a főnök elégedett volt a stabil működését a helyszínen.

Mindez igaz a legtöbb helyen, PHP-ben íródott, az adminisztrátorok szembesülnek projektek, amelyek nem használják a keret, cms és egy fej írásakor kódot.

1. Fájlok átvitele

A legjobb módja annak, hogy ssh-n keresztül az rsync:

Tehát rsync szinkronizálja mappák fokozatosan, azaz másolatokat csak - mi hiányzik, és ne érintse valami új. Például írhatsz egy kis bash script, ami szinkronizáljon a régi kiszolgálóról az új DNS idején a frissítés, de még mindig a legjobb megoldás az lenne, egy pár nap, hogy szinkronizálja a mappát kulcs -n (-száraz-run), csak hogy lásd a különbséget. Azt hiszem, a dokumentációban rsync megoldást találni a problémák a szinkronizálás a fájlok. A program telepítve kell lennie mindkét kiszolgálón.

FTP rsync protokollal nem tud dolgozni, akkor használd lftp:

2. Transfer MySQL adatbázis például

Mindkét gépen nyissa meg a MySQL szerver port a világon:

Majd írok egy példát, hogyan csináljak mentést minden nap, elvágásával logrotate.d:

Miért nem klasszikusan «mysqldump -u root -p adatbázis> dump.sql»? Ezután a nézet nem kerül mentésre, és a tárolt eljárásokat. Helyesen csinál guba MySQL Workbench, onnan vettem a parancsot.

Továbbá, a változó $ CMD hozzá -h ip_staryy_server és változtatni a $ CMD $ i | gzip -c> /srv/dumps/$i/$i.sql.gz on:

Persze, először létre kell hoznia az adatbázist:

3. átirányítás minden kapcsolatot a localhost: 3306 - a régi szerver az új szerver

Egészen egyszerűen ssh tunnel (pre megállási mysql):

És ssh csak akkor van szükség a helyi gépen. ellenőrizze:

Kapunk távoli MySQL szerver a helyi gépen. Minden jó, de ha a MySQL kliens látja, hogy a kapcsolat létrejött a localhost majd csatlakozik egy szerverhez egy helyi socket, és nincs ülés a ezzel nem elválaszt. Ie

Vagy a szokásos módon, írunk a script:

Nem működik, mert egy ilyen vegyület is feldolgozhatók segítségével helyi socket. Persze mehetsz futni mentén a linkeket az oldal, és cserélje ki a localhost 127.0.0.1 vagy külső szerver IP, már szerzett, de van egy jobb út.

Keresse az egyetlen egyezik a szöveg localhost, és helyébe valami mást, mint a lacalhost, mindkét fájl. Miután a helyi kapcsolat működni fog a TCP / IP! Az egyetlen dolog, MySQL nem engedi a felhasználók, akik a távoli host csak localhost a jogosultságokat. Ezt ki kell javítani% az átvitel során.

Beállítások kihagyása webszerver ebben a témában tele anyagokat.
Ennek eredményeként, van két működő gépek egyetlen adatbázis szerver. Nyugodtan újrakonfigurálhatja DNS és menj aludni!

Ui Így jött az ötlet, hogy proxy kéréseket a régi kiszolgálóról az új keresztül nginx. Már valaki ezt?