获取最后的MySQL二进制日志条目

时间:2008-12-12 02:56:56

标签: mysql

我正在使用MySQL复制,我想在slave上运行一个状态脚本来报告最后一个被复制到slave的语句。

我可以使用“SHOW SLAVE STATUS”来获取当前的读取和执行位置。但是如何在mysqlbinlog中使用该信息来读取最后一个条目?假设从属服务器遇到了主服务器,则以下语句不会返回任何有用的内容:

mysqlbinlog.exe -R --start-position=<READ_MASTER_LOG_POS> <MASTER_LOG_FILE> -h <MASTER_HOST>

我似乎无法从日志位置减去一个来获取前一个语句,并且我没有看到任何方式给出负偏移意义,以反向顺序从结尾读取。有没有办法做到这一点?

谢谢!

1 个答案:

答案 0 :(得分:1)

您是在发送到从站的最后一个语句之后,还是在从站上执行的最后一个语句之后?你提到你假设奴隶被赶上了主人,在这种情况下你只需要读取中继日志中的最后一个语句,而不是SHOW SLAVE STATUS中提供的信息:

mysqlbinlog.exe --start-position=<RELAY_LOG_POS> <RELAY_LOG_FILE>