MySQL复制不按时间顺序分解为二进制日志

看一下二进制日志的摘录,可以看出这两个语句是按时间顺序写入日志的:

#160628 17:32:46 server id 2220 end_log_pos 64812204 Query thread_id=157061 exec_time=0 error_code=0 SET TIMESTAMP=1467153166/*!*/; UPDATE `table` SET `field` = "a"; /*!*/; # at 64812204 -- #160628 17:32:36 server id 2220 end_log_pos 64895850 Query thread_id=157062 exec_time=0 error_code=0 SET TIMESTAMP=1467153156/*!*/; UPDATE `table` SET `field` = "b"; /*!*/; # at 64895850 

无法弄清楚如何在代码块中突出显示,但重要的部分是:

first statement - end_log_pos 64812204, SET TIMESTAMP=1467153166

second statement - end_log_pos 64895850, SET TIMESTAMP=1467153156

所以这导致主从机失步,主机最后运行第一条语句,而从机最后运行第二条语句。

任何人都可以帮我找出原因吗? 我注意到thread_id 157062的所有语句都是先执行的,但是在thread_id 157061之后的日志中被写入日志。

Mysql版本是5.5。

谢谢你的帮助。