我怎样才能创buildMySQL数据库的增量备份

我有mysql5.6 Linux mysql5.6 centos 6.4服务器

我有这样的每小时一次的mysql数据库备份的cron工作

它在python

 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)) 

问题是数据变得很less,但每次我必须备份所有数据库24次,这占用了太多的空间。

什么是最好的select

有什么办法进行增量备份,这样我就可以对数据库进行1次完整备份,每周只进行一次增量备份。

我想为单独的数据库单独的文件,所以如果我需要恢复单个数据库,那么我也可以做到这一点

非常简单:binlogging。 configurationmysql以保持二进制日志至less一天(可能更长)。 然后改变你的备份不做mysqldump,但使用像xtrabackup。

这样,您可以将备份计划每天减less到一次,并且仍然可以使用二进制日志前进到任何时间点。

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

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

如果您想节省空间,您可以继续每小时完成一次完整备份,但可以继续执行重复数据删除的文件系统(如lessfs) 。 您可以轻松地分割出一个分区,并使用lessfs格式化/挂载分区,然后让它处理重复数据删除,同时仍然可以在任何时间点恢复,只是没有空间。