Kako automatski izraditi sigurnosnu kopiju MySQL baze podataka koristeći PHP

Kako Automatski Izraditi Sigurnosnu Kopiju Mysql Baze Podataka Koristeci Php



MySQL je RDBMS otvorenog koda koji može učinkovito stvarati, upravljati i pohranjivati ​​ogromne količine podataka na strukturiran način. Kako bi se osigurala sigurnost podataka, sigurnosna kopija baze podataka važan je zadatak. MySQL podržava mnoge jezike, tako da za izradu sigurnosne kopije MySQL baze podataka, korisnik može napisati skriptu u PHP-u, koji je moćan skriptni jezik.

Ovaj članak govori o tome kako stvoriti sigurnosnu kopiju MySQL baze podataka pomoću PHP-a i automatizirati proces izrade sigurnosne kopije.

Automatski sigurnosno kopirajte MySQL bazu podataka pomoću PHP-a

Za pisanje PHP koda otvorite bilo koji uređivač koda. Za ovaj post, ' Visual Studio Code ” koristi se:









Napravite PHP datoteku pod nazivom ' db_backup.php ”:







Upišite ovaj kod i navedite svoje vjerodajnice MySQL baze podataka:

definirati ( 'DB_HOST' , 'vaš_mysql_host' ) ;

definirati ( 'DB_USER' , 'vaše_mysql_korisničko ime' ) ;

definirati ( 'DB_PASS' , 'vaša_mysql_lozinka' ) ;

definirati ( 'DB_NAME' , 'ime_vaše_baze_podataka' ) ;

Definirajte direktorij sigurnosne kopije, gdje će biti pohranjene datoteke sigurnosne kopije:



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

Postavite format datuma za naziv datoteke sigurnosne kopije:

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

Definirajte ' sigurnosna_datoteka ”:

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

Za izradu datoteke sigurnosne kopije upotrijebite uslužni program mysqldump i unesite vjerodajnice baze podataka:

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

sustav($naredba);

Komprimirajte datoteku sigurnosne kopije pomoću ' gzip ” alat:

$gzip_command = 'gzip '.$backup_file;

sustav($gzip_naredba);

Upišite ovaj dio koda da biste uklonili stare sigurnosne kopije datoteka, za ovaj post datoteke koje su ' 7 ” dana staro će se izbrisati:

$find_command = 'pronađi '.BACKUP_DIR.' -type f -name '*.gz' -mtime +7 -delete';

sustav($find_command);

Spremite datoteku i pokrenite je da potvrdite je li sigurnosna kopija stvorena ili ne. Otvorite terminal uređivača koda i upišite naredbu za izvršavanje datoteke:

php .\db_backup.php

Navedite direktorij da vidite postoji li datoteka sigurnosne kopije. Izlaz prikazuje datoteku sigurnosne kopije koja je uspješno stvorena:

Kako biste automatizirali proces izrade sigurnosne kopije, otvorite početni izbornik, potražite ' Planer zadataka ' i kliknite na ' Otvoren ' dugme:

Od ' Radnje ' i pritisnite ' Kreiraj zadatak ” opcija:

Otvorit će se novi čarobnjak. Krenite u ' Općenito ” i navedite naziv zadatka. Odaberite opciju koja osigurava backup čak i ako je korisnik odjavljen:

Dođite do ' Okidači ' i pritisnite ' Novi ' dugme:

Odaberite opciju “ Po rasporedu ”. Odaberite zakazano vrijeme kao ' Dnevno ' i podesite ' Početak ” vrijeme. U naprednim postavkama označite ' Omogućeno ' opciju i pritisnite ' u redu ' dugme:

Status će se promijeniti u ' Omogućeno ”:

Odaberite ' Radnje ” i kliknite na „ Novi ' dugme:

Upišite naziv za “Action” i potražite “ Program/skripta ' PHP datoteka koju ste stvorili i ' Dodajte argumente ” i kliknite na „ u redu ”:

Akcija će biti uspješno kreirana:

Idi na ' Uvjeti ” i označite potvrdni okvir „ Probudite računalo da riješite ovaj zadatak ”:

u ' postavke ' i odaberite opcije prikazane u izlazu i podesite vrijeme za ponovno pokretanje i kliknite na ' u redu ' dugme:

Pojavit će se upit, upišite vjerodajnice i kliknite na ' u redu ' dugme:

Vaša MySQL baza podataka automatski će se sigurnosno kopirati. Provjerite direktorij sigurnosne kopije da vidite datoteke sigurnosne kopije kada je to potrebno:

Uspješno ste izradili PHP datoteku za sigurnosno kopiranje MySQL baze podataka, a zatim ste za automatizaciju procesa sigurnosnog kopiranja koristili Task Scheduler.

Zaključak

Upotrijebite uređivač koda za izradu PHP datoteke, navedite vjerodajnice MySQL baze podataka i format naziva sigurnosne datoteke i format datuma. Koristite naredbu mysqldump za stvaranje SQL datoteke i gzip alat za komprimiranje SQL datoteke. Koristite Task Scheduler za automatizaciju procesa sigurnosne kopije. Ovaj post pokazao je kako automatski izraditi sigurnosnu kopiju MySQL baze podataka pomoću PHP-a.