Error number: MY-013731; Symbol: ER_GRP_RPL_MEMBER_ACTION_TRIGGERED; SQLSTATE: HY000
Message: The member action “%s” for event “%s” with priority “%u” will be run.
错误说明
MY-013731 ER_GRP_RPL_MEMBER_ACTION_TRIGGERED 由MySQL引擎返回的语法错误,原因是错误的使用了组复制成员动作。这是由MySQL在5.7.18版本引入的。这会在使用AdminAPI时出现,当尝试做成员发生更改时。
常见案例
这种错误通常发生在尝试运行以下命令时:
ALTER CHANGE MASTER TO FOR CHANNEL ‘channel_name ‘;
错误消息将显示:
ERROR 1820 (HY000): ER_GRP_RPL_MEMBER_ACTION_TRIGGERED: An action was triggered on member ‘member_name’, caused by a CREATE/ALTER/DROP CHANGE MASTER command on the same channel ‘channel_name’.
解决方法
发生此错误时,必须检查错误信息,以确定问题的原因,也可以检查日志记录,以确定在相同通道上运行的命令。
解决此问题的最常见方法是关闭成员,然后,在重新打开成员之前,更新CHANGE MASTER TO命令,以便从正确的状态开始。更新CHANGE MASTER TO命令需满足以下条件:
-已设置正确的复制帐户及其对应的密码
-存在binlog_file和binlog_position参数
要更新复制命令,请执行以下操作
STOP SLAVE;
CHANGE MASTER TO MASTER_USER=’repl’,MASTER_PASSWORD=’repl_password’,MASTER_LOG_FILE=’bin_log_file.00000xxx.xxxx’,MASTER_LOG_POS=123;
START SLAVE;
如果它仍然发生此错误,请从主机对成员进行重置
RESET SLAVE [(channel_name)];
确保没有任何与本地成员之间的复制冲突,即:
Check the binary logs and make sure it is the same which is on the master
确保在替换通道上的错误是关闭的成员resgerdless。
总之,如果收到ER_GRP_RPL_MEMBER_ACTION_TRIGGERED错误,则管理员应进行检查并重置通信通道,以确保复制功能正确完成,避免错误的回滚和不可预料的结果。