MySQL时间点恢复

时间:2013-10-31 12:06:12

标签: mysql innodb mysqldump

我有一个系统,我启用了二进制日志记录,我每晚都执行一个mysqldump(单一事务,所有InnoDB)。如果我想执行时间点恢复,我怎么知道二进制日志中的哪一点开始向前滚动?例如。

bin-log.000001包含dump.sql文件之前和之后的所有更改。如果我这样做:

mysql < dump.sql

要恢复到上一次完整导出,然后使用以下方式前滚到最新点:

mysqlbinlog bin-log.000001 | mysql

MySQL是否知道正确的起点?

2 个答案:

答案 0 :(得分:1)

所以是的,更多的研究让我here。以防万一其他人在想。

答案 1 :(得分:0)

查看mysqlbinlog的用法:

  --stop-datetime=name
                      Stop reading the binlog at first event having a datetime
                      equal or posterior to the argument; the argument must be
                      a date and time in the local time zone, in any format
                      accepted by the MySQL server for DATETIME and TIMESTAMP
                      types, for example: 2004-12-25 11:25:56 (you should
                      probably use quotes for your shell to set it properly).

似乎完全按照自己的意愿行事。