其他分享
首页 > 其他分享> > (十三)主从同步

(十三)主从同步

作者:互联网

主从同步的优点:

Binlog&Undolog

二进制日志(Binlog):存储的是一个又一个事件(Event),这些事件分别对应着数据库的更新操作,比如INSERT、UPDATE、DELETE

undo_logo: Undo Log保存了历史快照

1. 主从同步原理:

主从同步的原理就是基于Binlog进行数据同步的。在主从复制过程中,会基于3个线程来操作,一个主库线程,两个从库线程。

2. 主从一致性

主库同步之间的网络延迟,可能会造成主从数据不一致的情况。(同步过程中会对Binlog加锁,不会造成数据不一致的情况)

异步复制

是客户端提交COMMIT之后不需要等从库返回任何结果,而是直接将结果返回给客户端。

好处:不会影响主库写的效率

坏处:但可能会存在主库宕机,而Binlog还没有同步到从库的情况,也就是此时的主库和从库数据不一致。

半同步复制

客户端提交COMMIT之后不直接将结果返回给客户端,而是等待至少有一个从库接收到了Binlog,并且写入到中继日志中,再返回给客户端。

好处就是提高了数据的一致性

坏处:相比于异步复制来说,至少多增加了一个网络连接的延迟,降低了主库写的效率。

在MySQL5.7版本中还增加了一个rpl_semi_sync_master_wait_for_slave_count参数,我们可以对应答的从库数量进行设置,默认为1,也就是说只要有1个从库进行了响应,就可以返回给客户端。如果将这个参数调大,可以提升数据一致性的强度,但也会增加主库等待从库响应的时间。

组复制:

组复制技术,简称MGR(MySQL Group Replication)

标签:主库,Binlog,同步,十三,线程,日志,从库,主从
来源: https://www.cnblogs.com/greengages/p/16620929.html