Varundage automaatselt mitu MySQL või MariaDB andmebaasi

Sissejuhatus

Selles kirjutises kirjeldame, kuidas varundada mitut samas masinas asuvat MySQL-i või MariaDB andmebaasi, kasutades kohandatud bash-skripti ja seadistades cron-töö.

Andmebaasi varukoopia(d)

Eeldame, et meie Vultr eksemplaris on kolm MySQL andmebaasi nimega db-vultr-site , db-vultr-blog , db-vultr-app (Ärge muretsege nende andmebaaside loomise pärast, saate nende nimed asendada teie jaoks, kui neid kasutatakse skriptis allpool 2. sammus) .

  1. Logige sisse oma MySQL-i või MariaDB andmebaasi ja käivitage allpool päring, et luua andmebaasi kasutaja db_user_backupsvarukoopiate haldamiseks

    GRANT LOCK TABLES, SELECT, SHOW VIEW, REPLICATION CLIENT ON *.* TO 'db_user_backups'@'%' IDENTIFIED BY '{COMPLEX-PASSWORD}';
    

    Käivitage ka allpool veendumaks, et MySQL on konfigureeritud salvestatud protseduure õigesti taastama

    SET GLOBAL log_bin_trust_function_creators = 1;
    
  2. Seadistage vajalik kataloogistruktuur ja failid

    # create backup directory with environment and log file
    sudo mkdir /backups && cd /backups
    sudo touch .env db-backup.sh db-backup.log
    sudo chmod -R 775 /backups
    sudo chmod -R g+s /backups
    sudo chmod +x db-backup.sh
    
    # add mysql backup user credentials into environment file
    echo "export MYSQL_USER=db_user_backups" > /backups/.env
    echo "export MYSQL_PASS={COMPLEX-PASSWORD}" >> /backups/.env
    
  3. Avage db-backup.sh nano /backups/db-backup.shja kleepige selle sisse allolev kood, seejärel salvestage fail (Ctrl+X -> Y -> vajutage sisestusklahvi) .

    DB_NAMES=( 'db-vultr-site' 'db-vultr-blog' 'db-vultr-app' ) #replace with your own database name(s)
    BKUP_NAMES=()
    BKUP_DIR="/backups"
    
    # get total number of directories
    total_dbs=${#DB_NAMES[@]}
    
    # create backup file names
    for (( i=0; i<${total_dbs}; i++ )); do
        BKUP_NAMES[$i]="`date +%Y%m%d%H%M`-backup-$${DB_NAMES[$i]}.sql.gz"
    done
    
    # get backup users credentials
    source $BKUP_DIR/.env
    
    # create backups
    for (( i=0; i<${total_dbs}; i++ )); do
        # NOTE: --routines flag makes sure stored procedures are also backed up
        mysqldump --routines -u ${MYSQL_USER} -p${MYSQL_PASS} | gzip > ${BKUP_DIR}/${BKUP_NAMES[$i]}
    done
    

    Ülaltoodud kood silmusb läbi massiivi, mille andmebaasi (de) nimed, mida soovite varundada, ja teeb seda.

Cronjobi seadistamine

Seadistage igal keskööl töötav cronjob, mis käivitab varukoopia skripti ja salvestab tulemuse/väljundi varunduslogi.

  1. Ava crontab

    crontab -e
    
  2. Lisage allolev kirje crontabile

    0 0 * * * /usr/bin/env bash /backups/db-backup.sh &>> /backups/db-backup.log
    

    Märkus. Testimise ajal saate seadistada cronjobi käima iga 1 minuti järel nagu allpool

    * * * * * /usr/bin/env bash /backups/db-backup.sh &>> /backups/db-backup.log
    

    -VÕI- iga 5 minuti järel (asendage 5 soovitud arvu minutitega)

    */5 * * * * /usr/bin/env bash /backups/db-backup.sh &>> /backups/db-backup.log
    

Mis järgmiseks

Tõenäoliselt ei soovi te oma varukoopiaid sama(de)s serveri(te)s, kus teie andmebaas(id), vaid hoopis teises geograafilises asukohas asuvas serveris. Selleks on mitu võimalust, alates SFTP kasutamisest kuni kohandatud tööriistade kasutamiseni, mida pakuvad arvukad pilvesalvestuse pakkujad. Üks hea alternatiiv on Rsync, nagu siin on kirjeldatud - vultr.com/docs/setup-file-mirroring-using-rsync-in-debian-ubuntu

Kirjutas Lami Adabonyan

Jäta kommentaar

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit