!!! ĮSPĖJIMAS !!! Žemiau pateikta informacija yra tik informacinio pobūdžio. Jūs prisiimate visą riziką dėl galimų pasekmių.
Skriptas yra skirtas kiekvieno domeno mysql duomenų bazių kopijavimui, jį reikia vykdyti per cron užduotis.
/opt/mysql_local_backup/backup.sh
#!/bin/bash # TIK PLESK VALDYMO ĮRANKIO SERVERIAMS # === SETTINGS === DB_BACKUP="/opt/mysql_local_backup/dumps/" # Galima keisti į sau patogų katalogą DB_USER="admin" # PLESKO DB pagrindinis vartotojas DB_PASSWD=password (arba DB_PASSWD="password") # Slaptažodis SYS_USER="root" # Jeigu nurodomas docrootas ir norima, per FTP pasiekti failus GROUP="root" # Grupė, taip pat nurodoma. Pleske dažniausiai psacln # ================ # Kuriama direktorija /bin/mkdir -p $DB_BACKUP # BACKUP DARBAS while read DOMAIN DB do /usr/bin/mysqldump --user=$DB_USER --password=$DB_PASSWD $DB | /usr/bin/gzip > "$DB_BACKUP/$DOMAIN-$DB-$(date +%Y-%m-%d_%H%M).sql.gz"; done < <(/usr/bin/mysql --user=$DB_USER --password=$DB_PASSWD -NBe "use psa; select domains.name, data_bases.name from domains, data_bases where data_bases.dom_id=domains.id;") # Keičiamas failų owneris: /bin/chown -R $SYS_USER:$GROUP $DB_BACKUP # Valomi seni backupai: /usr/bin/find $DB_BACKUP -type f -mtime +3 -name "*.sql.gz" -exec /bin/rm -rf {} \;
Cron paleidimas kas naktį (galima ir dažniau, priklausomai nuo duomenų bazių dydžio ir duomenų svarbumo):
/etc/cron.d/mysql_local_backup.cron
50 4 * * * root /opt/mysql_local_backup/backup.sh 1>/dev/null 2>&1
|