Ako automaticky zálohovať databázu MySQL pomocou skriptu Bash

Ako Automaticky Zalohovat Databazu Mysql Pomocou Skriptu Bash



MySQL je populárny RDBMS, ktorý pomáha pri ukladaní a správe relačných databáz bez námahy. Poskytuje tiež klientsky nástroj mysqldump na vytvorenie logickej zálohy databáz MySQL. MySQL podporuje viacero jazykov a platforiem, čo znamená, že môžete použiť skriptovanie Bash na použitie pomôcky mysqldump na zálohovanie v systéme Linux.

Táto príručka ukáže, ako automaticky zálohovať databázy MySQL pomocou skriptu Bash, krok za krokom.

Ako automaticky zálohovať databázu MySQL pomocou skriptu Bash?

Vytvorte Bash skript na zálohovanie databázy MySQL. Najprv otvorte terminál, vytvorte adresár a prejdite do adresára zadaním týchto príkazov:







mkdir mysqlbackup

cd mysqlbackup/

Výstup zobrazuje, že ste úspešne prešli do adresára:





Vytvorte bash skript s názvom „ backup.sh ” pomocou ľubovoľného editora, pre tento príspevok sa používa nano editor:





nano backup.sh

Skript bash vytvorí:



Zadajte poverenia MySQL a názov databázy, ktorú chcete zálohovať:

DB_USER='používateľské meno'

DB_PASS='heslo'

DB_

Nastavte adresár zálohovania “ BACKUP_DIR ” poskytnutím umiestnenia, kam sa má uložiť záložný súbor:

BACKUP_DIR='/cesta/k/vašej/zálohe/adresáru'

Nastavte formát dátumu pre názov záložného súboru:

DÁTUM=$(dátum +'%Y-%m-%d_%H-%M-%S')

Použite tento príkaz mysqldump s povereniami databázy MySQL na vytvorenie záložného súboru SQL:

mysqldump --user=$DB_USER --password=$DB_PASS $DB_NAME > $BACKUP_DIR/$DB_NAME-$DATE.sql

Ak chcete komprimovať súbor zálohy SQL pomocou nástroja gzip, použite tento príkaz:

gzip $BACKUP_DIR/$DB_NAME-$DATE.sql

Aby ste ušetrili miesto na disku, po určitom čase odstráňte staré záložné súbory, na toto obdobie “ 7 ” dní starý záložný súbor sa odstráni pomocou tohto príkazu:

nájsť $BACKUP_DIR -type f -name '*.gz' -mtime +7 -delete

Uložte súbor a ukončite nano editor stlačením „ CTRL + X 'klávesy:

Zmeňte povolenia bash skriptu na spustiteľný spustením tohto príkazu:

chmod +x backup.sh

Bezchybný výstup znamená, že vykonanie príkazu je úspešné:

Spustite skript pomocou tohto príkazu bash:

sudo bash backup.sh

Zadajte heslo Ubuntu a použite „ ls ” na overenie, či je záložný súbor vytvorený alebo nie:

Záložný súbor sa úspešne vytvorí pomocou bash skriptu. Teraz na automatizáciu procesu zálohovania pomocou „ cron nástroj plánovača úloh. Ak chcete odoslať novú úlohu cron, použite „ -To je ” možnosť s crontabom:

crontab -e

Nastavte čas automatického spustenia bash skriptu. Pre tento príspevok „ 2:00 ” sa vyberie na automatické spustenie skriptu:

0 2 * * * /cesta/k/backup_mysql.sh

Uložte a ukončite súbor:

Pozrime sa na ďalší príkaz, ak chcete zálohovať databázu po každom „ 5 minút “napíšte toto a uložte súbor:

*/5 * * * * /cesta/k/backup_mysql.sh

Úspešné vytvorenie úlohy potrvá crontab nejaký čas:

Skontrolujte adresár pre záložné súbory, ktoré sa automaticky vytvárajú po „ 2:00 “, pomocou „ ls 'príkaz:

Záložné súbory databázy MySQL sa vytvárajú automaticky pomocou skriptu bash a nástroja cron.

Záver

Vytvorte bash skript zadaním poverení MySQL a názvu databázy, ktorú chcete zálohovať, a formátu názvu súboru. Na vytvorenie záložného súboru SQL použite príkaz mysqldump, komprimujte ho gzip a spustite skript. Použite crontab, aby bol proces zálohovania automatický. Tento príspevok diskutoval o tom, ako automaticky zálohovať databázu MySQL pomocou skriptu Bash.