zoukankan      html  css  js  c++  java
  • mysql数据库定时备份脚本

    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
  • 相关阅读:
    Kafka生产者Producer配置 ,及C#中使用学习资料连接
    Oracle expdb异地备份
    查询redis当前连接数据和当前信息
    Oracle在sqldeveloper中按格式显示日期数据
    DB行转列
    2019.9.10面试反思
    配置webpack4
    代理
    es6 promise
    es6 symbol
  • 原文地址:https://www.cnblogs.com/malukang/p/12447815.html
Copyright © 2011-2022 走看看