mysql主从复制原理,主主复制时主键冲突解决

database

主从复制原理:

1.master的增删改记录写入binlog;

2.slave的I/O Thread(负责读取master的binlog)读取binlog并将记录写入relaylog;

3.slave的sql thread读取relaylog同步到库;

主主结构:两个节点既是主节点,又是从节点

主主复制主键冲突:A节点插入了一条主键为4的数据,这条数据要同步到B节点,但是B节点存在了主键为4的数据,这时候就会失败!

解决:

让1台服务器  1,3,5,7来增长

另1台服务器  2,4,6,8来增长

一台服务器:

set global auto_increment_increment = 2;  // 全局

set global auto_increment_offset = 1;

set session auto_increment_increment = 2; //当次连接

set session auto_increment_offset = 1;

另一台服务器:

set global auto_increment_increment = 2;

set global auto_increment_offset = 2;

set session auto_increment_increment=2;

set session auto_increment_offset = 2;

有几台服务器,auto_increment_increment就设置几,比如3台服务器,auto_increment_increment=3,  3台服务器的auto_increment_offset依次开始为,1,2,3

 

以上是 mysql主从复制原理,主主复制时主键冲突解决 的全部内容, 来源链接: utcz.com/z/531692.html

回到顶部