通过innobackup结合计划任务实现备份mysql-创新互联

下文主要给大家带来通过innobackup结合计划任务实现备份mysql,希望这些内容能够带给大家实际用处,这也是我编辑通过innobackup结合计划任务实现备份mysql的主要目的。好了,废话不多说,大家直接看下文吧。

创新互联主要从事成都网站设计、做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务堆龙德庆,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

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

vim /root/allbak.sh
#!/bin/bash
[ ! -e /backup ]&& mkdir /backup  //新建个文件夹专门放备份文件的
day=`date +%F`           //定义日期是时间
user=root
pass=123456
innobackupex --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 
00  03 * * 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,大家是不是觉得非常有帮助。如果需要了解更多内容,请继续关注我们的行业资讯,相信你会喜欢上这些内容的。

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章名称:通过innobackup结合计划任务实现备份mysql-创新互联
文章转载:http://scyanting.com/article/dhhccp.html