Paano Awtomatikong I-backup ang MySQL Database Gamit ang PHP

Paano Awtomatikong I Backup Ang Mysql Database Gamit Ang Php



Ang MySQL ay isang open-source na RDBMS na maaaring mahusay na lumikha, mamahala at mag-imbak ng malalaking volume ng data sa isang structured na paraan. Upang matiyak ang seguridad ng data, ang pag-back up ng database ay isang mahalagang gawain. Sinusuportahan ng MySQL ang maraming wika, kaya upang lumikha ng backup ng MySQL database, maaaring isulat ng user ang script sa PHP, na isang malakas na wika ng scripting.

Tatalakayin ng artikulong ito kung paano gumawa ng backup ng MySQL database gamit ang PHP at i-automate ang proseso ng backup.

Awtomatikong I-backup ang MySQL Database Gamit ang PHP

Upang magsulat ng PHP code, buksan ang anumang code editor. Para sa post na ito, ' Visual Studio Code ' ay ginagamit:









Lumikha ng PHP file na pinangalanang ' db_backup.php ”:







I-type ang code na ito at ibigay ang iyong mga kredensyal sa database ng MySQL:

tukuyin ( 'DB_HOST' , 'your_mysql_host' ) ;

tukuyin ( 'DB_USER' , 'your_mysql_username' ) ;

tukuyin ( 'DB_PASS' , 'your_mysql_password' ) ;

tukuyin ( 'DB_NAME' , 'your_database_name' ) ;

Tukuyin ang direktoryo ng Backup, kung saan iimbak ang mga backup na file:



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

Itakda ang format ng petsa para sa pangalan ng backup na file:

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

Tukuyin ang ' backup_file ”:

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

Upang lumikha ng backup na file, gamitin ang mysqldump utility, at ibigay ang mga kredensyal sa database:

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

system($utos);

I-compress ang backup file gamit ang “ gzip ” tool:

$gzip_command = 'gzip '.$backup_file;

system($gzip_command);

I-type ang piraso ng code na ito upang alisin ang mga lumang backup na file, para sa post na ito ang mga file na ' 7 ” araw na luma ay tatanggalin:

$find_command = 'hanapin ang '.BACKUP_DIR.' -type f -name '*.gz' -mtime +7 -delete';

system($find_command);

I-save ang file, at patakbuhin ito upang kumpirmahin kung ang backup na file ay nilikha o hindi. Buksan ang terminal ng editor ng code at i-type ang command upang maisagawa ang file:

php .\db_backup.php

Ilista ang direktoryo upang makita kung umiiral ang backup na file. Ipinapakita ng output ang backup na file na matagumpay na nalikha:

Upang i-automate ang proseso ng backup, buksan ang start menu, hanapin ang ' Taga-iskedyul ng Gawain ” at i-click ang “ Bukas 'button:

Galing sa ' Mga aksyon ” at pindutin ang “ Lumikha ng Gawain ” opsyon:

Magbubukas ang isang bagong wizard. Tumungo sa ' Heneral ” tab at ibigay ang pangalan ng gawain. Piliin ang opsyong nagsisiguro sa backup kahit na naka-log out ang user:

Mag-navigate sa ' Mga nag-trigger ” tab at pindutin ang “ Bago 'button:

Piliin ang opsyon ' Sa isang iskedyul ”. Piliin ang nakaiskedyul na oras bilang “ Araw-araw 'at ayusin ang' Magsimula ” oras. Sa Advanced na mga setting, suriin ang ' Pinagana ” na opsyon at pindutin ang “ OK 'button:

Magbabago ang status sa “ Pinagana ”:

Piliin ang ' Mga aksyon ” tab at i-click ang “ Bago 'button:

I-type ang pangalan para sa 'Action' at mag-browse para sa ' Programa/script ” PHP file na iyong ginawa at “ Magdagdag ng mga argumento ” at i-click ang “ OK ”:

Matagumpay na malilikha ang aksyon:

Pumunta sa ' Mga kundisyon ' tab at lagyan ng check ang checkbox ' Gisingin ang computer upang kuskusin ang gawaing ito ”:

Nasa ' Mga setting ” tab at piliin ang mga opsyon tulad ng ipinapakita sa output at ayusin ang oras para sa pag-restart at mag-click sa “ OK 'button:

Lalabas ang prompt, i-type ang mga kredensyal at mag-click sa “ OK 'button:

Ang iyong MySQL database ay awtomatikong magba-backup. Suriin ang backup na direktoryo upang makita ang mga backup na file kapag kinakailangan:

Matagumpay mong nagawa ang PHP file para i-backup ang MySQL database, pagkatapos ay i-automate ang backup na proseso na ginamit mo ang Task Scheduler.

Konklusyon

Gamitin ang code editor upang lumikha ng PHP file, magbigay ng MySQL database credentials, at backup na format ng pangalan ng file at format ng petsa. Gamitin ang mysqldump command para gumawa ng SQL file at gzip tool para i-compress ang SQL file. Gamitin ang Task Scheduler para sa automation ng backup na proseso. Ipinakita ng post na ito kung paano awtomatikong mag-backup ng MySQL database gamit ang PHP.