首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在mysql数据库的增量备份中创建

如何在mysql数据库的增量备份中创建
EN

Server Fault用户
提问于 2013-07-14 08:37:55
回答 4查看 3.5K关注 0票数 2

我有linux centos 6.4服务器和mysql5.6

我有一项cron任务,用于按小时备份mysql数据库,如下所示

巨蟒

代码语言:javascript
复制
os.popen("mysqldump -u %s --password=%s -h %s -e --opt --skip-lock-tables  --skip-extended-insert -c %s | gzip -c > %s.gz" % (username, password, hostname, database, filename))

问题是,很少有数据被捕获,但是每次我必须备份所有数据库24次,这就占用了太多的空间。

什么是最好的替代方案?

是否有任何方法可以进行增量备份,以便对数据库每周进行1次完全备份,然后只进行增量备份。

我希望为不同的数据库拥有单独的文件,这样如果我需要恢复单个数据库,那么我也可以这样做。

EN

回答 4

Server Fault用户

发布于 2013-07-14 08:53:29

非常简单:绑定日志。配置mysql,使二进制日志至少保存一天(可能更长)。然后将备份更改为不执行mysqldump,而是使用类似xtrabackup的内容。

这样,您就可以将备份计划减少到每天一次,并且仍然可以使用binlog将备份时间前滚到任何时间点。

票数 6
EN

Server Fault用户

发布于 2013-07-14 08:41:50

在大多数情况下,每小时备份一次是非常愚蠢的。也许您需要考虑将mysql复制到另一个节点。

票数 1
EN

Server Fault用户

发布于 2013-07-14 14:09:09

您可以使用xtrabackup执行增量备份。若要还原单个数据库,请准备完整的增量备份(包括所有数据库),然后使用xtrabackup目录作为数据集运行MySQL,并接受所需单个数据库的mysqldump。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/523189

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档