MySQL Error number: MY-011573; Symbol: ER_GRP_RPL_MEMBER_NOT_FOUND; SQLSTATE: HY000

文档解释

Error number: MY-011573; Symbol: ER_GRP_RPL_MEMBER_NOT_FOUND; SQLSTATE: HY000

Message: The member with address %s:%u has unexpectedly disappeared, killing the current group replication recovery connection

错误说明

MySQL错误MY-011573 (ER_GRP_RPL_MEMBER_NOT_FOUND) 表示找不到在指定组中的一个成员。 这是一个群集复制错误,表明指定的复制组没有被正确配置,并且实例不能完成复制任务。

常见案例

最常见的原因是复制帐户(replication_user)没有在所有的实例上授权。 此外,该帐户的“复制属主”权限可能没有在所有实例上授予,或者该权限或可能被撤销或阻止。

另一个常见原因是,要加入复制组的MySQL实例不匹配复制组中现有成员的binlog。 这可以通过查看每个实例的binlog日志名称来检查。

解决方法

首先,确保复制帐户被正确授权,并具有在其他实例上授予的“复制属主”权限。第二,检查每个MySQL实例的binlog。 为了与复制组中现有成员的binlog匹配,您可以使用以下语法强制复制组的binlog:

CHANGE MASTER TO MASTER_LOG_FILE=”, MASTER_LOG_POS=;

此外,您还可以使用RESET MASTER语句,以强制新MySQL实例接受当前从组中传播的binlog:

RESET MASTER;

如果以上步骤失败,您可能需要修改每个实例的配置文件(my.cnf)中的log_bin_trust_function_creator选项,并添加skip_log_bin选项。

在个别实例上,还可以添加skip_slave_start选项,以及log_slave_updates,log_bin_trust_function_creators和log_slave_3_section选项,如果这些文件不存在。

此外,请确保每个复制成员的binlog格式和编码与组内的其他成员相同,以免出现意外情况。

最后,您可能还需要在启用群集复制后,运行mysqlrplsync使用错误选项来重新同步每个成员的复制状态。 上面的步骤可以修复此错误,从而启用复制群集。

你可能感兴趣的