上一篇
最新消息:2025年7月,MySQL 8.4版本中针对Group Replication的稳定性进行了多项优化,但部分用户在强制切换集群成员时仍可能遇到MY-013329错误,该问题通常发生在节点异常退出时强制重新配置集群的场景。
当你在MySQL Group Replication集群中执行类似以下操作时:
STOP GROUP_REPLICATION; SET GLOBAL group_replication_force_members='192.168.1.2:33061';
可能会触发错误:
ERROR 13329 (HY000): ER_GRP_RPL_FORCE_MEMBERS_WHEN_LEAVING
Cannot force new group membership while a member is leaving the group.
这个报错的核心矛盾在于:
group_replication_force_members
用于强制覆盖集群成员列表,但此时可能有节点正处于退出流程(例如崩溃或网络分区) 确认集群状态
SELECT * FROM performance_schema.replication_group_members;
观察所有节点的MEMBER_STATE
是否为UNREACHABLE
或ERROR
彻底移除问题节点
在健康的节点上执行:
SET GLOBAL group_replication_force_members='当前健康节点IP:端口';
SET GLOBAL group_replication_force_members='192.168.1.2:33061,192.168.1.3:33061';
选择新主节点
任意选择一个存活节点,在其配置文件(my.cnf)中添加:
group_replication_bootstrap_group=ON
重启MySQL服务后执行:
START GROUP_REPLICATION;
重新加入其他节点
在其他节点的my.cnf中移除group_replication_bootstrap_group
配置,然后执行:
START GROUP_REPLICATION;
监控建议
replication_group_members
表 ONLINE
节点数 < 集群总数/2 + 1时触发 配置优化
# 调整超时参数(单位:秒) group_replication_member_expel_timeout=30 group_replication_autorejoin_tries=3
FLUSH TABLES WITH READ LOCK
锁定写入 group_replication_exit_state_action
参数控制退出行为 如果问题仍未解决,建议收集以下信息提交给MySQL支持团队:
SHOW ENGINE INNODB STATUS
输出 SELECT * FROM performance_schema.replication_connection_status
结果 最后更新:2025年7月 | 基于MySQL 8.4.12验证
本文由 系易梦 于2025-07-30发表在【云服务器提供商】,文中图片由(系易梦)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/489436.html
发表评论