• ADADADADAD

    用innobackup结合计划任务对mysql做备份[ mysql数据库 ]

    mysql数据库 时间:2024-12-24 19:13:23

    作者:文/会员上传

    简介:

    写个脚本让其自动完全和增量备份完全备份vim /root/allbak.sh#!/bin/bash[ ! -e /backup ]&& mkdir /backup //新建个文件夹专门放备份文件的day=`date +%F` //定义日期是时

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    写个脚本让其自动完全和增量备份
    完全备份

    vim /root/allbak.sh#!/bin/bash[ ! -e /backup ]&& mkdir /backup //新建个文件夹专门放备份文件的day=`date +%F` //定义日期是时间user=rootpass=123456innobackupex --user $user --password $pass /backup/allbak${day} --no-timestamp //用innobackupex做完全备份mysql -u$user -p$pass -e "flush logs" ``` //启用binlog日志,每次完全备份之后,刷新一遍binlog日志

    vim /root/newbak.sh
    #!/bin/bash
    d1=date +%F//定义时间,用日期来区分
    d2=date +%F -d "-1 days" //找到昨天的日期,好指明上一次备份的备份文件
    dir1=/backup/allbak${d2} //昨天做的完全备份文件
    dir2=/backup/newbak${d2} //昨天做的增量备份文件
    user=root
    pass=123456
    [ ! -e /backup ]&& mkdir /backup//如果文件不存在,则创建文件夹
    if [ -e ${dir1} ];then //判断昨天做的是完全备份
    innobackupex --user $user --password $pass --incremental /backup/newbak${d1} --incremental-basedir=${dir1} --no-timestamp //指定昨天备份的完全备份文件
    elif [ -e ${dir2} ];then //判断昨天做的是增量备份
    innobackupex --user $user --password $pass --incremental /backup/newbak${d1} --incremental-basedir=${dir2} --no-timestamp//指定昨天备份的增量备份文件
    else
    innobackupex --user $user --password $pass /backup/allbak${d1} --no-timestamp
    //昨天既没有做增量备份,又没有做完全备份,则做一次完全备份。
    fi

    加权限:chmod +x /root/allbak.sh chmod +x /root/newbak.sh写计划任务:crontab -e 0003 * * 1 /root/allbak.sh&>/dev/null//每周一的凌晨3点执行完全备份00 04* * 2-7 /root/newbak.sh& >/dev/null//每周二到周7的凌晨4点执行增量备份重启crond服务systemctl restart crond systemctl enable crond
    用innobackup结合计划任务对mysql做备份.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: 备份mysqlinnobackup