自動バックアップmysql
3897 ワード
バックアップファイルが格納されているディレクトリの作成
スクリプト:vi/usr/local/mysqlback.sh
shスクリプトに権限を追加
crontabを利用して、毎日午前3時に定刻に実行します
【備考】簡単なバックアップ
mkdir /usr/local/dbbak
スクリプト:vi/usr/local/mysqlback.sh
# /bin/bash
DB_NAME="dsideal_db"
DB_USER="root"
DB_PASS="123456"
BACK_DIR="/usr/local/dbbak"
DATE="$DB_NAME-`date +'%Y-%m-%d=%H:%M:%S'`"
LogFile="$BACK_DIR"/dbbakup.log #
BackNewFile=$DATE.sql
mysqldump --opt --force -u$DB_USER -p$DB_PASS $DB_NAME > $BACK_DIR/$DATE.sql
echo -----------------------"$(date +"%y-%m-%d %H:%M:%S")"----------------------- >> $LogFile
echo createFile:"$BackNewFile" >> $LogFile
find "/usr/local/dbbak/" -mtime +7 -type f -name "*.sql" -print > deleted.txt
echo -e "delete files:
" >> $LogFile
#
cat deleted.txt | while read LINE
do
rm -rf $LINE
echo $LINE>> $LogFile
done
echo "---------------------------------------------------------------" >> $LogFile
shスクリプトに権限を追加
chmod 777 /usr/local/mysqlback.sh
crontabを利用して、毎日午前3時に定刻に実行します
crontab -e
0 03 * * * /usr/local/mysqlback.sh > /dev/null 2>&1
【備考】簡単なバックアップ
mysqldump --databases test --flush-logs> /usr/local/backup-`date +%F-%H-%M`.sql