Kako samodejno varnostno kopirati bazo podatkov MySQL s PHP

Kako Samodejno Varnostno Kopirati Bazo Podatkov Mysql S Php



MySQL je odprtokodna RDBMS, ki lahko učinkovito ustvarja, upravlja in shranjuje ogromne količine podatkov na strukturiran način. Da bi zagotovili varnost podatkov, je varnostno kopiranje baze podatkov pomembna naloga. MySQL podpira številne jezike, zato lahko uporabnik za ustvarjanje varnostne kopije baze podatkov MySQL napiše skript v PHP, ki je močan skriptni jezik.

Ta članek bo razpravljal o tem, kako ustvariti varnostno kopijo baze podatkov MySQL z uporabo PHP in avtomatizirati postopek varnostnega kopiranja.

Samodejno varnostno kopirajte bazo podatkov MySQL s PHP

Če želite napisati kodo PHP, odprite kateri koli urejevalnik kode. Za to objavo, ' Koda Visual Studio « se uporablja:









Ustvari datoteko PHP z imenom ' db_backup.php ”:







Vnesite to kodo in navedite svoje poverilnice baze podatkov MySQL:

opredeliti ( 'DB_HOST' , 'your_mysql_host' ) ;

opredeliti ( 'DB_USER' , 'vaše_uporabniško_ime_mysql' ) ;

opredeliti ( 'DB_PASS' , 'vaše_mysql_geslo' ) ;

opredeliti ( 'DB_NAME' , 'ime_vaše_baze_podatkov' ) ;

Določite imenik varnostne kopije, kjer bodo shranjene varnostne kopije:



opredeliti ( 'BACKUP_DIR' , '/path/to/your/backup/directory' ) ;

Nastavite obliko zapisa datuma za ime datoteke varnostne kopije:

$datum = datum('Y-m-d_H-i-s');

Določite ' varnostna_datoteka ”:

$backup_file = BACKUP_DIR. '/' . DB_NAME. '-' . $datum. '.sql';

Za ustvarjanje varnostne kopije uporabite pripomoček mysqldump in zagotovite poverilnice baze podatkov:

$command = 'mysqldump --user='.DB_USER.' --password='.DB_PASS.' '.DB_NAME.' > '.$backup_file;

sistem ($ ukaz);

Stisnite varnostno kopijo z uporabo » gzip ” orodje:

$gzip_command = 'gzip '.$backup_file;

sistem ($gzip_ukaz);

Vnesite ta del kode, da odstranite stare varnostne kopije datotek, za to objavo datoteke, ki so ' 7 ” dni bo izbrisanih:

$find_command = 'poišči '.BACKUP_DIR.' -type f -name '*.gz' -mtime +7 -delete';

sistem ($find_command);

Shranite datoteko in jo zaženite, da potrdite, ali je varnostna kopija ustvarjena ali ne. Odprite terminal urejevalnika kode in vnesite ukaz za izvedbo datoteke:

php .\db_backup.php

Navedite imenik, da preverite, ali datoteka varnostne kopije obstaja. Izhod prikaže datoteko varnostne kopije, ki je bila uspešno ustvarjena:

Če želite avtomatizirati postopek varnostnega kopiranja, odprite začetni meni, poiščite » Načrtovalnik opravil « in kliknite » Odprto ” gumb:

Iz ' Dejanja « in pritisnite » Ustvari nalogo ” možnost:

Odpre se nov čarovnik. Pojdite v ' Splošno « in vnesite ime opravila. Izberite možnost, ki zagotavlja varnostno kopiranje tudi, če je uporabnik odjavljen:

Pomaknite se do » Sprožilci ' in pritisnite ' Novo ” gumb:

Izberite možnost ' Po urniku ”. Izberite načrtovani čas kot » Dnevno « in prilagodite » Začetek ” čas. V naprednih nastavitvah označite » Omogočeno ' in pritisnite ' v redu ” gumb:

Stanje se bo spremenilo v » Omogočeno ”:

Izberite ' Dejanja « in kliknite na » Novo ” gumb:

Vnesite ime za »Dejanje« in poiščite » Program/skripta » Datoteka PHP, ki ste jo ustvarili, in » Dodajte argumente « in kliknite » v redu ”:

Dejanje bo uspešno ustvarjeno:

Pojdi na ' Pogoji ' in potrdite potrditveno polje ' Zbudite računalnik, da opravite to opravilo ”:

V ' nastavitve « in izberite možnosti, kot so prikazane v izhodu, ter prilagodite čas za ponovni zagon in kliknite » v redu ” gumb:

Prikaže se poziv, vnesite poverilnice in kliknite » v redu ” gumb:

Vaša baza podatkov MySQL se samodejno varnostno kopira. Preverite imenik varnostne kopije, da si ogledate datoteke varnostne kopije, ko jih potrebujete:

Uspešno ste ustvarili datoteko PHP za varnostno kopiranje baze podatkov MySQL, nato pa ste za avtomatizacijo postopka varnostnega kopiranja uporabili razporejevalnik opravil.

Zaključek

Z urejevalnikom kode ustvarite datoteko PHP, zagotovite poverilnice baze podatkov MySQL ter obliko imena varnostne datoteke in obliko datuma. Uporabite ukaz mysqldump za ustvarjanje datoteke SQL in orodje gzip za stiskanje datoteke SQL. Uporabite Task Scheduler za avtomatizacijo postopka varnostnega kopiranja. Ta objava je pokazala, kako samodejno varnostno kopirati bazo podatkov MySQL s PHP.