Kā automātiski dublēt MySQL datu bāzi, izmantojot Bash skriptu

Ka Automatiski Dublet Mysql Datu Bazi Izmantojot Bash Skriptu



MySQL ir populāra RDBVS, kas palīdz bez pūlēm uzglabāt un pārvaldīt relāciju datu bāzes. Tas nodrošina arī mysqldump klienta utilītu, lai izveidotu loģisku MySQL datu bāzu dublējumu. MySQL atbalsta vairākas valodas un platformas, kas nozīmē, ka varat izmantot Bash skriptēšanu, lai izmantotu mysqldump utilītu dublēšanai operētājsistēmā Linux.

Šajā rokasgrāmatā tiks parādīts, kā automātiski dublēt MySQL datu bāzes, izmantojot Bash skriptu, soli pa solim.

Kā automātiski dublēt MySQL datu bāzi, izmantojot Bash skriptu?

Izveidojiet Bash skriptu MySQL datu bāzes dublēšanai. Pirmkārt, atveriet termināli, izveidojiet direktoriju un dodieties uz direktoriju, ierakstot šīs komandas:







mkdir mysqlbackup

CD mysqlbackup/

Izvade parāda, ka esat veiksmīgi pārgājis uz direktoriju:





Izveidojiet bash skriptu ar nosaukumu ' backup.sh Izmantojot jebkuru redaktoru, šai ziņai tiek izmantots nano redaktors:





nano backup.sh

Bash skripts izveidos:



Norādiet MySQL akreditācijas datus un tās datu bāzes nosaukumu, kuru vēlaties dublēt:

DB_USER='lietotājvārds'

DB_PASS='parole'

DB_

Iestatiet dublējuma direktoriju ' BACKUP_DIR ”, norādot vietu, kur jāsaglabā dublējuma fails:

BACKUP_DIR='/ceļš/uz/jūsu/dublējums/direktorijs'

Iestatiet datuma formātu dublējuma faila nosaukumam:

DATE=$(datums +'%Y-%m-%d_%H-%M-%S')

Izmantojiet šo komandu mysqldump ar MySQL datu bāzes akreditācijas datiem, lai izveidotu SQL dublējuma failu:

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

Lai saspiestu SQL dublējuma failu ar gzip rīku, izmantojiet šo komandu:

gzip $BACKUP_DIR/$DB_NAME-$DATE.sql

Lai ietaupītu vietu diskā, pēc noteikta laika noņemiet vecos dublējuma failus šim periodam ' 7 ” dienas vecs dublējuma fails tiks noņemts, izmantojot šo komandu:

atrast $BACKUP_DIR -type f -name '*.gz' -mtime +7 -delete

Saglabājiet failu un izejiet no nano redaktora, nospiežot ' CTRL+X ” taustiņi:

Mainiet bash skripta atļaujas uz izpildāmu, izpildot šo komandu:

chmod +x backup.sh

Izvade bez kļūdām nozīmē, ka komandas izpilde ir veiksmīga:

Palaidiet skriptu, izmantojot šo bash komandu:

sudo bash backup.sh

Ievadiet Ubuntu paroli un izmantojiet ' ls ” komanda, lai pārbaudītu, vai dublējuma fails ir izveidots vai nav:

Dublējuma fails ir veiksmīgi izveidots, izmantojot bash skriptu. Tagad, lai automatizētu dublēšanas procesu, izmantojot “ cron 'darba plānotāja utilīta. Lai iesniegtu jaunu cron darbu, izmantojiet ' -Tas ir ” opcija ar crontab:

crontab -e

Iestatiet bash skripta automātiskās palaišanas laiku. Šai ziņai ' 2:00 ” ir atlasīts skripta automātiskai palaišanai:

0 2 * * * /path/to/backup_mysql.sh

Saglabājiet un izejiet no faila:

Apskatīsim citu komandu, ja vēlaties dublēt datu bāzi pēc katras ' 5 minūtes ” ierakstiet šo un saglabājiet failu:

*/5 * * * * /path/to/backup_mysql.sh

Crontab prasīs kādu laiku, lai veiksmīgi izveidotu darbu:

Pārbaudiet, vai direktorijā nav rezerves failu, kas tiek automātiski izveidoti pēc “ 2:00 ', izmantojot ' ls ” komanda:

MySQL datu bāzes dublējuma faili tiek izveidoti automātiski, izmantojot bash skriptu un cron utilītu.

Secinājums

Izveidojiet bash skriptu, norādot MySQL akreditācijas datus un tās datu bāzes nosaukumu, kuru vēlaties dublēt, un faila nosaukuma formātu. Izmantojiet komandu mysqldump, lai izveidotu dublējuma SQL failu, gzip, lai to saspiestu, un palaidiet skriptu. Izmantojiet crontab, lai dublēšanas process būtu automātisks. Šajā ziņojumā tika apspriests, kā automātiski dublēt MySQL datu bāzi, izmantojot Bash skriptu.