• CentOS定时备份MySQL数据库


    1、编写备份脚本
    vi /usr/sbin/mysql_dy_backup.sh
    #!/bin/bash
    #备份路径
    BACKUP=/data/backup/sql/dy
    #当前时间
    DATETIME=$(date +%Y-%m-%d_%H%M%S)
    echo "===备份开始==="
    echo "备份文件存放于${BACKUP}/$DATETIME.tar.gz"
    #数据库地址
    HOST=localhost
    #数据库用户名
    DB_USER=root
    #数据库密码
    DB_PW=Ces123456
    #创建备份目录
    [ ! -d "${BACKUP}/$DATETIME" ] && mkdir -p "${BACKUP}/$DATETIME"
     
    #后台系统数据库
    DATABASE=dy_backgroundms
    mysqldump -u${DB_USER} -p${DB_PW} --host=$HOST -q -R --databases $DATABASE | gzip > ${BACKUP}/$DATETIME/$DATABASE.sql.gz
     
    #投入品监管数据库
    DATABASE=dy_firip
    mysqldump -u${DB_USER} -p${DB_PW} --host=$HOST -q -R --databases $DATABASE | gzip > ${BACKUP}/$DATETIME/$DATABASE.sql.gz
     
    #压缩成tar.gz包
    cd $BACKUP
    tar -zcvf $DATETIME.tar.gz $DATETIME
    #删除备份目录
    rm -rf ${BACKUP}/$DATETIME
     
    #删除10天前备份的数据
    find $BACKUP -mtime +10 -name "*.tar.gz" -exec rm -rf {} ;
    echo "===备份成功==="
     
    注:find:linux的查找命令,用户查找指定条件的文件
    -mtime:标准语句写法
    +10:查找10天前的文件,这里用数字代表天数,+30表示查找30天前的文件
    "*.*":希望查找的数据类型,"*.jpg"表示查找扩展名为jpg的所有文件,"*"表示查找所有文件,这个可以灵活运用,举一反三
    -exec:固定写法
    rm -rf:强制删除文件,包括目录
    {} ; :固定写法,一对大括号+空格+
     
    2、更改备份脚本权限
    chmod u+x /usr/sbin/mysql_dy_backup.sh
     
    3、设置定时执行脚本任务
    crontab -e
    #每天17:30执行
    30 17 * * * /usr/sbin/mysql_dy_backup.sh
     ————————————————————————————————————————————————————————————————————————
     

    copy时候按a

     可以通过以下命令查看任务日志:

    tail -f /var/log/cron

    q:退出
    wq:修改后保存退出
    q!:强制退出,不保存修改的内容

  • 相关阅读:
    Filebeat 日志收集器 安装和配置
    纠错式教学法对比鼓励式教学法 -----Lily、贝乐、英孚,乐加乐、剑桥国际、优学汇、北外青少
    硅谷夜谈
    指路Reactive Programming
    Spring WebFlux 要革了谁的命?
    flink部署操作-flink standalone集群安装部署
    Flink的高可用集群环境
    当怪物来敲门 经典台词
    浅析几种线程安全模型
    最详细的排序解析,理解七大排序
  • 原文地址:https://www.cnblogs.com/emily1130/p/7345842.html
Copyright © 2020-2023  润新知