zoukankan      html  css  js  c++  java
  • centos下mysql自动备份

    创建脚本

    #!/bin/bash
    db_user="root"
    db_passwd="root"
    db_name="data_center"
    #备份目录
    backup_dir="/home/backup/mysql"
    #时间格式
    time=$(date +"%Y-%m-%d")
    #mysql 备份的命令,注意有空格和没有空格
    mysqldump -u$db_user -p$db_passwd $db_name  > "$backup_dir/$db_name"-"$time.sql"
    echo "your database backup successfully completed"
    #这里将7天之前的备份文件删掉
    SevenDays=$(date -d -7day  +"%Y-%m-%d")
    if [ -f /home/backup/mysql/$db_name-$SevenDays.sql ]
    then
    rm -rf /home/backup/mysql/$db_name-$SevenDays.sql
    echo "you have delete 7days ago bak sql file "
    else
    echo "7days ago bak sql file not exist "
    echo "bash complete"
    fi

    创建定时任务

    crontab -e
    
    0 2 * * * cd /root/ && ./data_center.sh

    经过测试发现备份出来的文件都是0kb

    经过排查是  mysqldump 路径文件

    备份脚本改为

    #!/bin/bash
    db_user="root"
    db_passwd="root"
    db_name="data_center"
    #备份目录
    backup_dir="/home/backup/mysql"
    #时间格式
    time=$(date +"%Y-%m-%d")
    #mysql 备份的命令,注意有空格和没有空格
    /usr/local/mysql/bin/mysqldump -u$db_user -p$db_passwd $db_name  > "$backup_dir/$db_name"-"$time.sql"
    echo "your database backup successfully completed"
    #这里将7天之前的备份文件删掉
    SevenDays=$(date -d -7day  +"%Y-%m-%d")
    if [ -f /home/backup/mysql/$db_name-$SevenDays.sql ]
    then
    rm -rf /home/backup/mysql/$db_name-$SevenDays.sql
    echo "you have delete 7days ago bak sql file "
    else
    echo "7days ago bak sql file not exist "
    echo "bash complete"
    fi

    解决!

  • 相关阅读:
    mod_rewrite
    敏捷开发
    转python和ruby的相同点
    ESB总线知识小结
    使用 squid 2.7 for windows 进行无缓存反向代理
    初探K2workflow
    没激情的工作
    多易拍 二次开发
    查看数二进制代码片段
    生成随机数
  • 原文地址:https://www.cnblogs.com/song-wentao/p/10564992.html
Copyright © 2011-2022 走看看