Бэкап баз MYSQL и системных файлов

Возникла необходимость бэкапить базы MySQL и некоторые папки на FTP. Немного погуглив накопал вот такой вот скрипт:


#!/bin/sh # System + MySQL backup script # # ---------------------------------------------------------------------
######################### ######TO BE MODIFIED##### ### System Setup ### BACKUP=/root ### Настройка Mysql ### MUSER="root" MPASS="1234567" MHOST="localhost" ### Настройки FTP ###< FTPD="/Public" FTPU="user" FTPP="password" FTPS="192.168.1.2" ######################################### ### Binaries ### TAR="$(which tar)" GZIP="$(which gzip)" FTP="$(which ftp)" MYSQL="$(which mysql)" MYSQLDUMP="$(which mysqldump)" ### Today + hour in 24h format ### NOW=$(date +%Y-%m-%d) ### Create hourly dir ###

mkdir $BACKUP/$NOW ### Получаем имена всех баз Mysql ### DBS="$($MYSQL -u $MUSER -h $MHOST -p$MPASS -Bse 'show databases')" for db in $DBS do ### Создаем директории для каждой базы. Резервное копирование будет происходить в различные каталоги ### mkdir $BACKUP/$NOW/$db FILE=$BACKUP/$NOW/$db/$db.sql.gz echo $i; $MYSQLDUMP --add-drop-table --allow-keywords -q -c -u $MUSER -h $MHOST -p$MPASS $db $i | $GZIP -9 > $FILE done ### Создаем один большой файл для его последующей закачки ### mkdir $BACKUP/$NOW/Drupalfiles cp -r /usr/local/www/drupal /$BACKUP/$NOW/Drupalfiles ARCHIVE=$BACKUP/server1-$NOW.tar.gz ARCHIVED=$BACKUP/$NOW $TAR -zcvf $ARCHIVE $ARCHIVED ### Закачиваем на FTP ### cd $BACKUP DUMPFILE=server1-$NOW.tar.gz $FTP -n $FTPS <<END_SCRIPT quote USER $FTPU quote PASS $FTPP prompt off cd $FTPD mput $DUMPFILE quit END_SCRIPT ### Подчищаем за собой ### rm -rf $ARCHIVED

 

Интересное на сайте: 
0
Голосов пока нет