个人博客版本
因为昨天数据库出了问题,丢了一些数据,很伤心,同时也意识到了备份数据的重要性。所以在此把脚本,和遇到的问题写下,仅供大家参考。
backup.sh脚本内容
# MySQL用户
user="root"
# MySQL密码
userPWD="yu12346"
# 需要定时备份的数据表列表
dbNames=(zrlog yu)
# 每次的备份数据以日期创建文件夹存放,同时删除过期备份
# 此处以保留1个月的备份数据为例
DATE=`date -d "now" +%Y%m%d%H`
ODATE=`date -d "-1 month" +%Y%m%d%H`
newdir=/usr/local/mysql/backup/$DATE
olddir=/usr/local/mysql/backup/$ODATE
# 删除过期备份数据
if [ -d $olddir ];
then
rm -rf $olddir
fi
# 创建新备份文件夹
mkdir $newdir
# 对备份数据库列表的所有数据库备份
for dbName in ${dbNames[*]}
do
dumpFile=$dbName-$DATE.sql.gz
/usr/local/mysql/bin/mysqldump -u$user -p$userPWD $dbName | gzip > $newdir/$dumpFile
done
注意:
1.路径都要写绝对路径。
2.把备份目录,mysql