上一篇
凌晨2:15,手机突然疯狂震动——监控系统报警!某电商平台的订单服务挂了 😱 打开日志一看:
[ERROR] [MY-010584] [Repl] Slave I/O for channel '': error connecting to master 'repl_user@primary-db:3306' - retry-time: 60 retries: 1 message: Anonymous_Gtid to GTID: UUID is same as Group_name, Error_code: MY-004020
数据库主从同步崩了!这个ER_ANONYMOUS_TO_GTID_UUID_SAME_AS_GROUP_NAME错误(错误号4020)来得真不是时候,大促前的压力测试还在跑着呢...
这个4020错误其实在说:MySQL组复制(Group Replication)中自动生成的GTID UUID居然和group_name重复了!就像你给自己孩子取名"张爸爸"一样混乱 🤯
常见触发场景:
STOP GROUP_REPLICATION; SET GLOBAL group_replication_group_name="新的唯一值"; START GROUP_REPLICATION;
💡 小技巧:可以用SELECT UUID()
生成新值,但别再用原来的group_name!
STOP GROUP_REPLICATION;
[mysqld] group_replication_group_name="全新UUID值"
命名禁忌:
aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa
这种"懒人值"检查清单:
-- 查看当前group_name SHOW VARIABLES LIKE 'group_replication_group_name'; -- 检查GTID情况 SELECT @@GLOBAL.gtid_executed;
预防性配置(8.0.23+版本有效):
[mysqld] group_replication_gtid_assignment_block_size=1000000
曾经有个客户因为这个错误导致12小时数据不同步...后来发现是DBA复制粘贴配置时偷懒了 😅
0.21版本后MySQL会对这种情况给出更明确的警告,但依然需要人工干预
重要提示:修改group_name会导致集群需要重新初始化,非必要别动!
4020错误看似吓人,其实处理起来很简单,记住三个要点:
现在你可以安心回去睡觉了...哦等等,3点还有个发布!(DBA的日常啊 🥱)
本文由 隋易容 于2025-08-02发表在【云服务器提供商】,文中图片由(隋易容)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/514152.html
发表评论