MySQL:设置 skip-errors=1062 时行会发生什么

Adr*_*ian 6 mysql replication

我发现我可以skip-errors=1062在中设置,my.cnf但我需要知道发生错误时该行会发生什么。它会被悄悄丢弃吗?或者那个配置选项相当于STOP SLAVE;SQL_SLAVE_SKIP_COUNTER=1; START SLAVE;

Rol*_*DBA 9

是的,它是等效的,前提是您要跳过的从属错误是 1062(Duplicate Key)

它必须[mysqld]像这样出现在my.cnf的部分中

[mysqld]
slave-skip-errors=1062
Run Code Online (Sandbox Code Playgroud)

所有其他错误号将停止 SQL 线程并且需要

STOP SLAVE;
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
START SLAVE;
Run Code Online (Sandbox Code Playgroud)

继续复制

如果你有多个错误号要跳过,它应该是一个逗号分隔的错误号列表

[mysqld]
slave-skip-errors=1062,1053
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请阅读有关它的MySQL 文档

你问

它会被悄悄丢弃吗?

是的,它确实。请记住,任何应该更改的非键列都不会更改。