Ta priročnik bo korak za korakom prikazal, kako samodejno varnostno kopirati baze podatkov MySQL z uporabo skripta Bash.
Kako samodejno varnostno kopirati bazo podatkov MySQL s skriptom Bash?
Ustvarite skript Bash za varnostno kopijo baze podatkov MySQL. Najprej odprite terminal, ustvarite imenik in se pomaknite do imenika tako, da vnesete te ukaze:
mkdir mysqlbackup
cd mysqlbackup/
Izhod prikaže, da ste se uspešno pomaknili do imenika:
Ustvarite skript bash z imenom ' backup.sh ” z uporabo katerega koli urejevalnika, za to objavo se uporablja nano urejevalnik:
nano backup.sh
Skript bash bo ustvaril:
Vnesite poverilnice MySQL in ime baze podatkov, ki jo želite varnostno kopirati:
DB_USER='uporabniško ime'DB_PASS='geslo'
DB_
Nastavite varnostni imenik ' BACKUP_DIR ” tako, da navedete mesto, kamor naj se shrani datoteka varnostne kopije:
BACKUP_DIR='/pot/do/vaše/varnostne kopije/imenika'Nastavite obliko zapisa datuma za ime datoteke varnostne kopije:
DATUM=$(datum +'%Y-%m-%d_%H-%M-%S')Za ustvarjanje datoteke varnostne kopije SQL uporabite ta ukaz mysqldump s poverilnicami baze podatkov MySQL:
mysqldump --user=$DB_USER --password=$DB_PASS $DB_NAME > $BACKUP_DIR/$DB_NAME-$DATE.sqlZa stiskanje datoteke varnostne kopije SQL z orodjem gzip uporabite ta ukaz:
gzip $BACKUP_DIR/$DB_NAME-$DATE.sqlČe želite prihraniti prostor na disku, odstranite stare varnostne kopije po določenem času, za to obdobje “ 7 ” dni stara varnostna kopija bo odstranjena s tem ukazom:
najdi $BACKUP_DIR -type f -name '*.gz' -mtime +7 -deleteShranite datoteko in zapustite nano urejevalnik s pritiskom na “ CTRL + X ” tipke:
Spremenite dovoljenja skripta bash v izvršljivo tako, da zaženete ta ukaz:
chmod +x backup.shIzhod brez napak pomeni, da je bila izvedba ukaza uspešna:
Zaženite skript s tem ukazom bash:
sudo bash backup.shVnesite geslo za Ubuntu in uporabite » ls ” za preverjanje, ali je datoteka varnostne kopije ustvarjena ali ne:
Datoteka varnostne kopije je uspešno ustvarjena s skriptom bash. Zdaj za avtomatizacijo postopka varnostnega kopiranja z uporabo » kron ” pripomoček za razporejevalnik opravil. Če želite oddati novo opravilo cron, uporabite » -Je ” s crontabom:
crontab -eNastavite čas za samodejno izvajanje skripta bash. Za to objavo, ' 2 zjutraj ” je izbrano za samodejno izvajanje skripta:
0 2 * * * /path/to/backup_mysql.shShranite in zaprite datoteko:
Oglejmo si še en ukaz, če želite varnostno kopirati bazo podatkov po vsakem ' 5 minut ” vnesite to in shranite datoteko:
*/5 * * * * /path/to/backup_mysql.shCrontab bo potreboval nekaj časa, da uspešno ustvari opravilo:
Preverite imenik za datoteke varnostne kopije, ki se samodejno ustvarijo po ' 2 zjutraj ', uporabljati ' ls ” ukaz:
Datoteke varnostne kopije baze podatkov MySQL se ustvarijo samodejno s pomočjo skripta bash in pripomočka cron.
Zaključek
Ustvarite skript bash tako, da navedete poverilnice MySQL in ime baze podatkov, ki jo želite varnostno kopirati, ter obliko imena datoteke. Uporabite ukaz mysqldump za ustvarjanje varnostne kopije datoteke SQL, gzip za njeno stiskanje in zaženite skript. Uporabite crontab, da bo postopek varnostnega kopiranja samodejen. Ta objava je razpravljala o tem, kako samodejno varnostno kopirati bazo podatkov MySQL s pomočjo skripta Bash.