首页 > 数据库技术 > 详细

mysql数据库定时备份脚本

时间:2020-03-09 13:55:14      阅读:71      评论:0      收藏:0      [点我收藏+]

mysql数据库定时备份脚本

#数据库用户名
DB_USER=xxoo
#数据库密码
DB_PASSWD=Xxoo_12xxoo
#数据库名,可以定义多个数据库,中间以空格隔开,如:test test1 test2
DB_NAME=(db1 db2 db3)
#备份时间
CURRENT_BACKUP_TIME=`date +%Y%m%d%H%M%S`
#日志备份路径
LOG_PATH=/data01/mysql/backup/backup_log
#数据备份路径
DATA_PATH=/data01/mysql/backup/backup_data
#日志记录头部
echo ”备份时间为$CURRENT_BACKUP_TIME,备份数据库 $DB_NAME 开始” >> $LOG_PATH/mysql_backup_log.log
#正式备份数据库
for DB in ${DB_NAME[@]};do
    source=`mysqldump  -u$DB_USER -p$DB_PASSWD $DB > $DATA_PATH/$DB-$CURRENT_BACKUP_TIME.sql` 2>> $LOG_PATH/mysql_backup_log.log;
    #备份成功以下操作
    if [ "$?" == 0 ];then
        cd $DATA_PATH
        #为节约硬盘空间,将数据库压缩
        tar zcf $DB-$CURRENT_BACKUP_TIME.tar.gz $DB-$CURRENT_BACKUP_TIME.sql > /dev/null
        #删除原始文件,只留压缩后文件
        rm -f $DATA_PATH/$DB-$CURRENT_BACKUP_TIME.sql
        echo “数据库 $DB 备份成功!!” >> $LOG_PATH/mysql_backup_log.log
        #删除三十天之前的备份
        find $DATA_PATH -name $DB-*.tar.gz -type f -mtime +30 -exec rm -rf {} \; > /dev/null 2>&1echo "数据库 $DB 30天之前的备份数据被删除!!" >> $LOG_PATH/mysql_backup_log.log
    else
        #备份失败则进行以下操作
        echo “数据库 $DB 备份失败!!” >> $LOG_PATH/mysql_backup_log.log
    fi
done

 

mysql数据库定时备份脚本

原文:https://www.cnblogs.com/malukang/p/12447815.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!