Néhány tipp, hogyan készítsünk biztonsági másolatot adatbázisok
Néhány tipp, hogyan készítsünk biztonsági másolatot adatbázisok
Első pillantásra, hogy egy biztonsági másolatot a webhely adatbázis nagyon egyszerű, ha rendelkezik a mysqldump segédprogram és az ütemező cron munkahelyeket. Hozzátéve, hogy az ütemező bejegyzés:
és minden, minden nap 03:00 14 perc forgatják dump. Itt az ideje hát úgy kell megválasztani, hogy ebben a pillanatban a szerver terhelés minimális volt naponta.
De ez a megoldás nem eléggé megbízható. Ha az alap sérült, például a 3:12, a lerakó felülíródik egy üres fájlt.
Ennek elkerülése érdekében érdemes menteni egy új példányt eltávolítása előtt tartani a régi, és hogy egyes példányok rendszeres időközönként. Például én sohrayayu heti és havi, és kisebb súlyt SQL-szerver, egyszerűen másolja a lerakó fájlok:
Késések óránként készül dump lehetne létrehozni / másolt teljesen.
Az ilyen példányokat akkor jók, ha vissza akarja állítani a teljes adatbázis. De néha vannak olyan helyzetek, amikor szükség van, hogy visszaszerezze csak egy része a tartalmat, hogy fenntartsák mi került eltávolítása után a mentés. Például ez lehet szükség, ha a fórum egyik része eltávolításra került. Ebben az esetben egy szeméttelep tette a fenti beállításokkal, nem alkalmas, mert van egy SQL-paranccsal törölheti, és létrehozza az adatbázis táblákat újra. Így van értelme, hogy folytassuk a következőképpen: távolítsa el a biztonsági másolatot a tábla szerkezete egy fájlba, és az adatokat - a másik. Amellett, hogy ha importál adatokat egy meglévő tábla már nem volt hiba, akkor van értelme, hogy helyezze őket INSERT figyelmen kívül hagyni. Ebben az esetben a csapat távolítsa el a lerakó formájában:
Ebben az esetben, ha szükséges, a részleges helyreállítás bázis lehet behozni csak backup.sql, és vosstanovley csak azokat a rekordokat törölt (és nem érinti azokat, akik később jelentek meg), és ha szükséges, a teljes gyógyulás - első backup.struct.sql majd backup.sql. Továbbá, bizonyos esetekben van értelme használni a lehetőséget --replace, ebben az esetben, hanem az INSERT utasítás CSERE fogják használni, amely pedig az összes rekordot az adatbázisban az eszembe, ami abban az időben eltávolítja a mentés, majd később - változatlan maradt.
Ha root-hozzáférési szolgáltatások a szerveren, akkor ajánlott, hogy egy biztonsági másolatot, mint root, és mentse egy könyvtárat, amely nem áll rendelkezésre a hétköznapi felhasználók számára. Ez akkor hasznos, ha a támadó uyavzvimost a szerveren, ami lehetővé teszi, hogy végre prozivolny kód nevében ugyanazt a felhasználói, ahonnan a szkriptek futnak helyszínen, ebben az esetben nem lesz képes törölni mentést. És ne felejtsük el, hogy rendszeresen feltölteni a mentés a saját számítógép (vagy egy másik szerveren, ha rendelkezésre áll).
Hozzátette később: írtam egy kis scriptet, amely megvalósítja az összes ötletet itt leírt egy sokkal kényelmesebb formát és tedd a GitHub.
Chudnenko! És talán még prompt paranccsal másolja a lerakó egy távoli FTP? (Csatlakozás a login / jelszó)