バックアップの保存期間を延長し、バックアップ環境を強化しました。cronにて定時バックアップをとり、さらに数日分を残すようにしました。
ところで、MySQLのバックアップ用スクリプトとして、AutoMySQLBackupというのがありました。手軽に使えていいかもしれませんね。
以下はcronでMySQLを定期バックアップするための覚え書きです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| #!/bin/sh
# MySQL Backup
# Remains at least these days
keepday=14
# Settings
dest=$HOME/backup_mysql
tmp=$HOME/tmp
srcfile=mysql.dump
user=user
db=dbname
# Dump
/usr/local/mysql/bin/mysqldump -u root --password='パスワード' --opt データベース名 > /*****/backup/temp
# Get timestamp
timestamp=`date +%Y%m%d`
old_date=`date "-d$keepday days ago" +%Y%m%d`
bkfile=$dest/$srcfile-$timestamp.tar.gz
cd $tmp; tar zcvf $bkfile $srcfile
cd $HOME
# > /dev/null 2>&1
if [ $? != 0 -o ! -e $bkfile ]; then
echo "backup faild -- ($tmp/$srcfile)"
exit 1
fi
rmfile=$dest/$srcfile-$old_date.tar.gz
if [ -e $rmfile ]; then
rm -f $rmfile
fi
rm -f $tmp/$srcfile
exit |