目前网站在用的自动备份mysql数据库

 
#! /bin/bash
 
# MySQL用户
user="root"
# MySQL密码
userPWD="123456"
 
# 需要定时备份的数据表列表
dbNames=(db_test1 db_test2 db_test3 db_test4 db_test5)
 
# 每次的备份数据以日期创建文件夹存放,同时删除过期备份
# 此处以保留1个月的备份数据为例
DATE=`date -d "now" +%Y%m%d%H`
ODATE=`date -d "-1 month" +%Y%m%d%H`
 
newdir=/data/backup/$DATE
olddir=/data/backup/$ODATE
 
LogFile="/root/auto_backupmysql.log"
 
# 删除过期备份数据
if [ -d $olddir ];
    then
        rm -rf $olddir
fi
 
# 创建新备份文件夹
mkdir $newdir
Begin=`date +"%Y-%m-%d %H:%M:%S"`
 
# 对备份数据库列表的所有数据库备份
for dbName in ${dbNames[*]}
do
#    dumpFile=$dbName-$DATE.sql.gz
#    mysqldump -u$user -p$userPWD $dbName | gzip > $newdir/$dumpFile
    $fileName=$newdir/$dbName-$DATE.sql
    mysqldump -u$user -p$userPWD $dbName  > $fileName
    Last=`date +"%Y-%m-%d %H:%M:%S"`
    echo start:$Begin end:$Last $fileName succ >> $LogFile
done
 
 
#每天1点备份
0 4 * * * /root/auto_backupmysql.sh
 

 

 

300*300
 文章首页关于迷茫时代关于我写意人生
版权所有:迷茫时代 All rights reserved   
执行时间:0.00826 秒