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 复制技术后,能够很轻松的搭建出一套读写拆散的架构。
如有谬误,请斧正!