美文网首页
Mysql 异步/同步/半同步复制

Mysql 异步/同步/半同步复制

作者: Mr_Editor | 来源:发表于2021-03-09 10:08 被阅读0次

Mysql复制

异步

逻辑

MySQL 默认的复制就是异步的,主库再执行完客户端提交的事务后会立即将结果返回给客户端,并不关系从库是否已经接收和处理。

技术实现

MySQL主库将Binlog事件写入到Binlog文件中,此时主库只通知一下Dump线程发送这些新的Binlog,然后主库继续处理提交操作,不会保证这些Binlog传到任何一个从库节点上。

缺点

因为异步复制,主节点不关从节点是否收到Binlog,如果主crash掉了,此时主节点上已提交的事务可能并没有传到从库上,如果此时,强行将从节点提升为主节点,可能导致新的主节点上数据不完整。

全同步

逻辑

全同步是指当主库接收到客户端的一个事务请求,所有的从库都执行了该事务才返回给客户端。

技术实现

当主库收到客户端提交的事务后,所有的从库必须收到并且执行事务,然后主库才会执行后续操作。

缺点

因为要等待所有从库执行完事务,主库才将结果返回给客户端,所以全同步复制的性能必然受到严重影响,即完成一个事务的时间被拉长,性能降低。

半同步

逻辑

半同步复制是介于全同步复制和全异步复制之间的一种,主库只需要等待至少一个从库节点收到并Flush Binlog到Relay log文件即可,主库不需要等待所有从库给主库反馈。(注意只要收到一个从库的反馈即可)

技术实现

介于异步复制和全同步复制之间,主库再执行完客户端提交的食物后不是立刻返回给客户端,而是等待至少一个从库接收到并写到relay log中才返回给客户端。

缺点

相对于异步复制,半同步复制提交了数据的安全性,同时它也造成了一定程序的延迟,这个延迟至少是一个TCP/IP往返时间,因此,半同步复制虽好在低延时的网络中使用。

XMind - Trial Version

相关文章

  • 微服务MySQL改造

    MySQL 主从复制之半同步模式MYSQL半同步概念:一般情况下Mysql默认复制模式为异步 异步复制模式 主服务...

  • Mysql半同步复制

    从MySQL5.5开始,MySQL以插件的形式支持半同步复制。如何理解半同步呢?首先我们来看看异步,全同步的概念 ...

  • Mysql 异步/同步/半同步复制

    Mysql复制 异步 逻辑 MySQL 默认的复制就是异步的,主库再执行完客户端提交的事务后会立即将结果返回给客户...

  • MySQL半同步复制

    半同步复制 从MYSQL5.5开始,支持半自动复制。之前版本的MySQL Replication都是异步(asyn...

  • (16)MGR

    问题:MySQL高可用方案,异步和半同步复制,难可用和不丢数据间取舍,MGR基于Paxos多数派,作为半同步复制的...

  • 2017 11-12 MySQL应用3

    一.半同步复制 (1)半同步复制作用 相比较于同步复制和异步复制来说,半同步复制的工作原理是当主库执行完客户端的提...

  • mysql-高可用架构类设计中会遇到的问题???

    高可用架构类设计 问题一: mysql 的主从复制是如何工作的??? mysql 主从复制的实现原理异步复制半同步...

  • MySQL之:半同步复制

    半同步复制 默认情况下,MySQL的复制功能是异步的,异步复制可以提供最佳的性能,主库把 binlog 日志发送给...

  • mysql 异步复制和半同步复制

    在MySQL5.5之前,MySQL 的复制是异步操作,主库和从库的数据之间存在一定的延迟,这样存在一个隐患:当在主...

  • MySQL Group Replication

    Group Replication [TOC] 关于 Group Greplication 异步复制 半同步复制 ...

网友评论

      本文标题:Mysql 异步/同步/半同步复制

      本文链接:https://www.haomeiwen.com/subject/dhuvqltx.html