MySQL主从同步原理

MySQL主从的作用:MySQL主从(MySQL replication),主要用于MySQL的实时备份或者读写分离。

MySQL主从的原理,总结一下:

(1)每个主从仅可以设置一个主。

(2)主在执行SQL之后,记录二进制log文件(bin-log)

(3)从连接主,并获取主的bin-log,存于本地relay-log,并从上次执行的位置起执行SQL,一旦遇到错误则停止同步。

mysql主从配置replication,又叫A,B复制,保证主从数据同步

A --> change data --> bin_log -transfer --> B --> repl_log -->change data

从这几条replication原理来看,可以有这些推论:

(1)主从间的数据库不是实时同步,就算网络连接正常,也存在瞬间,主从数据不一致。

(2)如果主从的网络断开,从会在网络正常后,批量同步。

(3)如果对从进行修改数据,那么很可能从在执行主的bin-log时出现错误而停止同步,这是个很危险的操作。所以一般情况下,非常小心的修改从上的数据。

(4)一个衍生的配置是双主,即互为主从配置,只要双方的修改不冲突,可以工作良好。

(5)如果需要多主的话,可以用环形配置,这样任何一个节点的修改都可以同步到所有节点。

(6)可以应用在读写分离的场景,用以降低单台MySQL的I/O

(7)可以是一主多从,也可以是相互主从(主主)

上一篇:innodb cluster


下一篇:MGR参数之group_replication_member_weight