实战-MySQL定时全量备份(1)

阅读本文大约需要 5 分钟

概要

引言

全量备份

恢复全量备份

定时备份

引言

在产品上线之后,我们的数据是相当重要的,容不得半点闪失,应该做好万全的准备,搞不好哪一天被黑客入侵或者恶意删除,那就 gg 了。所以要对我们的线上数据库定时做全量备份与增量备份。例如:每天做一次增量备份,每周做一次全量备份。以下所涉及的操作系统为 centos7 。GitHub 地址:

全量备份

如上一段代码所示,其功能是将 test 数据库全量备份。其中 MySQL用户名为:root密码为:123456备份的文件路径为:/home (当然这个路径也是可以按照个人意愿修改的。)备份的文件名为:backup.sql

参数 —flush-logs:使用一个新的日志文件来记录接下来的日志参数 —lock-all-tables:锁定所有数据库以下为我使用的数据库备份脚本文件:脚本文件功能不是很复杂,首先是各种变量赋值。然后备份数据库,接着是进入到备份文件所在的目录,再将备份文件压缩。其中倒数第三行是使用 nodejs 将备份的数据库文件上传到七牛云中,这里就不在过多的阐述了,与本文主题不符,想看具体实现可以查看 GitHub 源码。其中相应的变量改成自己的值即可拿过来使用。

恢复全量备份

或者

嗯,回复全量备份也就这样两句,似乎不用多说什么了。对了,在恢复全量备份之后,要将全量备份之后的增量备份也恢复回数据库中。

定时备份

输入如下命令,进入 crontab 定时任务编辑界面:

添加如下命令,其意思为:每分钟执行一次备份脚本:

每五分钟执行 :

每小时执行:

每天执行:

每周执行:

每月执行:

每年执行:

关于 crontab 命令的格式说明如下:

后面会有专门的一篇文章来写写 Linux 的定时任务 crontab。

ok,今天就分享这些知识,下一篇分享 MySQL 增量更新的知识,敬请期待!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180730G1VCOW00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券