MySQL复制Master - Master确保相同的状态

时间:2012-02-10 18:14:38

标签: mysql database replication database-replication

我有两个MySQL 5.0之间的Master to Master复制设置

我的要求是在开始我的应用程序之前我必须确保数据库是相同的我想确认“show slave status”命令的“seconds_behind_master”在0秒时足以考虑2个数据库是同步?

http://dev.mysql.com/doc/refman/5.0/en/show-slave-status.html

谢谢

2 个答案:

答案 0 :(得分:2)

不,这不足以保证数据库完全相同,只是奴隶已经运行了主二进制日志中的所有语句。您可以在从属数据库上更新或删除大块数据,并且仍然在master = 0之后的秒数,但是奴隶肯定不会与主数据库相同。

如果你真的想验证数据库是否相同,你应该使用像Percona的pt-table-checksum这样的工具。

答案 1 :(得分:1)

这并不是一个真正的保证,因为master-to-master复制并不能保证跨服务器的原子性。

此外,单次读取0可能毫无意义,但如果没有报告错误,则随着时间的推移读取0将是服务器同步的良好指示。

所以,我说,每秒读取一次,持续10秒,如果它们都是0,没有错误,那么你可能已经足够好了,不像Ike建议那样比较校验和。