mysql 复制类型图谱

graph TD
    C{mysql复制类型}
    C --> D[异步复制]
    C --> E[延迟复制]
    C --> F[半同步复制]
    C --> G[多源复制]
    C --> K[并行复制]
    F --> H[有损]
    F --> Y[无损]
mysql 默认的是异步复制模式

异步复制

异步复制中,master和slave无任何依赖关系,master不关心slave是否复制成功。异步复制是性能最好的,相比其他模式唯一的缺点就是可能会出现复制延迟的情况。

半同步复制

半同步复制需要安装并启用半同步复制插件。并且需要多个slave节点
  • 有损半同步

    master突然宕机,但是多个slave并没有返回收到二进制日志的ACK,所以有可能slave会丢失master最后一批提交的事务数据。是因为有损半同步把 COMMIT提交步骤放在了复制前一步。
  • 无损半同步

    把同步放在了COMMIT前一步,直到ACK后提交。这样就算master宕机,事务也会在salve提交,或者是回滚。所以不存在数据丢失问题。

延迟复制

通过设置延迟时间来做复制,一半用来做备份。。。

多源复制

从多个mysql主机复制数据。。目前接触的业务没发现多源复制的用处。。。

并行复制

  • COMMIT ORDER

    这种是主机是怎么样,slave也是怎么样
  • WRITESET

    事务不冲突则并行。推荐使用WRITESET并行复制

读写分离

有了mysql复制技术后,可以很轻松的搭建出一套读写分离的架构。

如有错误,请指正!

jksusu
26 声望3 粉丝

« 上一篇
mysql 主从复制