Kuinka varmuuskopioida MySQL-tietokanta automaattisesti PHP:n avulla

Kuinka Varmuuskopioida Mysql Tietokanta Automaattisesti Php N Avulla



MySQL on avoimen lähdekoodin RDBMS, joka voi tehokkaasti luoda, hallita ja tallentaa valtavia tietomääriä jäsennellyllä tavalla. Tietojen turvallisuuden varmistamiseksi tietokannan varmuuskopiointi on tärkeä tehtävä. MySQL tukee monia kieliä, joten käyttäjä voi luoda varmuuskopion MySQL-tietokannasta kirjoittamalla komentosarjan PHP:llä, joka on tehokas komentosarjakieli.

Tässä artikkelissa käsitellään MySQL-tietokannan varmuuskopion luomista PHP:n avulla ja varmuuskopiointiprosessin automatisoimista.

Varmuuskopioi automaattisesti MySQL-tietokanta PHP:n avulla

Kirjoita PHP-koodi avaamalla mikä tahansa koodieditori. Tätä viestiä varten ' Visual Studio Code ' on käytössä:









Luo PHP-tiedosto nimeltä ' db_backup.php ':







Kirjoita tämä koodi ja anna MySQL-tietokantasi tunnistetiedot:

määritellä ( 'DB_HOST' , 'oma_mysql_isäntä' ) ;

määritellä ( 'DB_USER' , 'oma_mysql_käyttäjänimesi' ) ;

määritellä ( 'DB_PASS' , 'your_mysql_password' ) ;

määritellä ( 'DB_NAME' , 'tietokantasi_nimi' ) ;

Määritä varmuuskopiohakemisto, johon varmuuskopiotiedostot tallennetaan:



määritellä ( 'BACKUP_DIR' , '/polku/oma/varmuuskopio/hakemistoon' ) ;

Aseta päivämäärämuoto varmuuskopiotiedoston nimelle:

$päivämäärä = päivämäärä('Y-m-d_H-i-s');

Määrittele ' varmuuskopio_tiedosto ':

$backup_file = BACKUP_DIR . '/'. DB_NAME . '-'. $päivämäärä . '.sql';

Luo varmuuskopiotiedosto mysqldump-apuohjelmalla ja anna tietokannan tunnistetiedot:

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

system($komento);

Pakkaa varmuuskopiotiedosto käyttämällä ' gzip ”työkalu:

$gzip_command = 'gzip '.$backup_file;

system($gzip_komento);

Kirjoita tämä koodinpätkä poistaaksesi vanhat varmuuskopiotiedostot, tässä viestissä tiedostot, jotka ovat ' 7 ” päivää vanhat poistetaan:

$find_command = 'etsi '.BACKUP_DIR.' -tyyppi f -nimi '*.gz' -mtime +7 -delete';

system($find_command);

Tallenna tiedosto ja suorita se varmistaaksesi, onko varmuuskopiotiedosto luotu vai ei. Avaa koodieditori ja kirjoita komento suorittaaksesi tiedoston:

php .\db_backup.php

Luettele hakemisto nähdäksesi, onko varmuuskopiotiedosto olemassa. Tulos näyttää onnistuneesti luodun varmuuskopiotiedoston:

Automatisoidaksesi varmuuskopiointiprosessin avaa Käynnistä-valikko, etsi ' Tehtävien ajoitus ' ja napsauta ' Avata ”-painike:

Kohdasta ' Toiminnot ' ja paina ' Luo tehtävä ”vaihtoehto:

Uusi ohjattu toiminto avautuu. Suuntaa ' Kenraali ” -välilehti ja anna tehtävän nimi. Valitse vaihtoehto, joka varmistaa varmuuskopioinnin, vaikka käyttäjä olisi kirjautunut ulos:

Siirry kohtaan ' Liipaisimet ' -välilehteä ja paina ' Uusi ”-painike:

Valitse vaihtoehto ' Aikataulun mukaan ”. Valitse ajoitettu aika ' Päivittäin ' ja säädä ' alkaa ' aika. Tarkista lisäasetuksista ' Käytössä ' -vaihtoehto ja paina ' OK ”-painike:

Tila muuttuu ' Käytössä ':

Valitse ' Toiminnot ' -välilehti ja napsauta ' Uusi ”-painike:

Kirjoita nimi 'Action' ja selaa ' Ohjelma/käsikirjoitus ' luomasi PHP-tiedosto ja ' Lisää argumentteja ' ja napsauta ' OK ':

Toiminto luodaan onnistuneesti:

mene kohtaan ' ehdot välilehti ja valitse valintaruutu Herätä tietokone hieromaan tätä tehtävää ':

' asetukset ' -välilehti ja valitse lähdössä näkyvät vaihtoehdot ja säädä uudelleenkäynnistyksen aika ja napsauta ' OK ”-painike:

Näyttöön tulee kehote, kirjoita valtuustiedot ja napsauta ' OK ”-painike:

MySQL-tietokanta varmuuskopioidaan automaattisesti. Tarkista tarvittaessa varmuuskopiohakemistosta varmuuskopiotiedostot:

Olet onnistuneesti luonut PHP-tiedoston MySQL-tietokannan varmuuskopioimiseksi ja sitten varmuuskopiointiprosessin automatisoimiseksi, kun käytit Task Scheduleria.

Johtopäätös

Käytä koodieditoria PHP-tiedoston luomiseen, MySQL-tietokannan valtuustietojen antamiseen sekä varmuuskopiotiedoston nimen ja päivämäärän muotoon. Käytä mysqldump-komentoa SQL-tiedoston luomiseen ja gzip-työkalua SQL-tiedoston pakkaamiseen. Käytä Task Scheduleria varmuuskopiointiprosessin automatisointiin. Tämä viesti osoitti, kuinka MySQL-tietokanta voidaan varmuuskopioida automaattisesti PHP:n avulla.