通过slave_exec_mode=IDEMPOTENT跳过主从复制中的错误

通过slave_exec_mode=IDEMPOTENT跳过主从复制中的错误
set global slave_exec_mode=IDEMPOTENT
slave_exec_mode 有两种模式
STRICT 模式不会自动跳过复制错误。
IDEMPOTENT  模式跳过主键冲突错误和删除行不存在错误。并自动修复和master数据一直。
1.insert 记录从库已存在
a:主键冲突。
此时insert into语句在备机的效果就跟replace into一样,但却并不是把insert into转换成replace into来执行,分两种情况:
delete from t1 ....
insert into t1 set ....
b: 非主键的唯一键冲突转化为update:
update t1 set ....
 
2 update 场景
当备机不存在要更新的记录,这条update跳过不执行。
 
3 delete场景
同update场景一样,备机跳过此delete
 
注意: 使用冥等模式时表要有主键。不能对DDL操作冥等,对字段长度或类型不同导致的错误也不是冥等。
 
等复制追上之后:
set global slave_exec_mode=STRICT
原文地址:https://www.cnblogs.com/vansky/p/8980562.html