MySQL Error number: MY-011538; Symbol: ER_GRP_RPL_SALVE_IO_THD_ON_SECONDARY_MEMBER; SQLSTATE: HY000

文档解释

Error number: MY-011538; Symbol: ER_GRP_RPL_SALVE_IO_THD_ON_SECONDARY_MEMBER; SQLSTATE: HY000

Message: Can’t start replica IO THREAD of channel ‘%s’ when group replication is running with single-primary mode on a secondary member.

MY-011538 ER_GRP_RPL_SALVE_IO_THD_ON_SECONDARY_MEMBER错误是MySQL在尝试在副本集增加节点时发生的。它表明在副本集复制时,某些节点的IO线程记录复制的双方的成员都是从节点成员,没有指明其中有一个是主机节点。

常见案例

发生这种情况的常见原因是,当向MySQL副本集添加新节点时,MySQL节点不能正确识别主机节点,而只知道添加了一个新的从节点。在这种情况下,MySQL副本集内的GTID会出现不一致,因此会报出MY-011538 ER_GRP_RPL_SALVE_IO_THD_ON_SECONDARY_MEMBER错误。

解决方法

要解决MY-011538 ER_GRP_RPL_SALVE_IO_THD_ON_SECONDARY_MEMBER错误,最简单的办法是重新启动MySQL副本集,这样副本集内所有节点都将重置。在重新启动之前,应当检查一下配置文件,确保所有节点的配置都一致,并且把需要添加的节点指定为复制主机。

可以重启副本集,但是不是必须的,也可以手动修复,这种方式更加复杂,谨慎选择。如果要手动修复,可以重新启动副本集,进行正常的复制状态,然后使用GTID进行回滚,以了解引起这个错误的原因。

如果一切正常,可以尝试重新添加节点,将新节点指定为主服务器,同时将旧的主服务器更改为从服务器。这是唯一可以很好地解决MY-011538 ER_GRP_RPL_SALVE_IO_THD_ON_SECONDARY_MEMBER错误的办法。希望以上介绍能够帮助你解决这个问题。

你可能感兴趣的