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.phpNavedite 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.