主从复制时的binlog和commit的顺序问题?

主从复制的时候【半同步模式】先传输binlog到从节点,等从节点ack后才commit,问题是mysql的binlog在commit的时候才会刷盘,那还没commit刷盘,主从同步的binlog哪里来的?

阅读 2.6k
2 个回答

虽然binlog在主节点提交事务之前尚未刷写到磁盘上,但它已经被写入到主节点的内存中了。当从节点确认接收到binlog后,主节点会将binlog发送给从节点,从节点会将其写入自己的磁盘中。因此主从同步的binlog是通过网络传输从主节点发送到从节点的。

推荐问题