MySQL ER_GRP_RPL_REGISTER_TRX报错远程修复教程

文章导读
解决方案:在从库上执行 SET GLOBAL group_replication_consistency = 'EVENTUAL'; 然后重启group_replication。
📋 目录
  1. 来源1
  2. 来源2
  3. 来源3
  4. 来源4
  5. 来源5
  6. 来源6
A A

解决方案:在从库上执行 SET GLOBAL group_replication_consistency = 'EVENTUAL'; 然后重启group_replication。

来源1

ER_GRP_RPL_REGISTER_TRX: Error registering transaction in slave group repository. 当开启了group_replication后,如果从库执行了DDL语句,就会报这个错。 原因是group_replication默认的consistency级别是BEFORE_ON_PRIMARY_FAILOVER,会对从库的DML和DDL语句进行检查,如果不一致就会报错。 解决方法是在从库上执行:SET GLOBAL group_replication_consistency = 'EVENTUAL'; 然后重启group_replication。

来源2

MySQL 8.0.27版本,启动group replication时遇到这个问题:ERROR 3668 (HY000): Group Replication plugin failed to start on boot. Reason: ER_GRP_RPL_REGISTER_TRX: Error registering transaction in slave group repository. 原因是MySQL 8.0.27中引入了新的组复制一致性级别,默认是BEFORE_ON_PRIMARY_FAILOVER,会检查从节点的事务一致性,导致从节点无法启动。 解决办法:将group_replication_consistency设置为EVENTUAL。 修改my.cnf:group_replication_consistency = EVENTUAL 然后重启mysql。

MySQL ER_GRP_RPL_REGISTER_TRX报错远程修复教程

来源3

slave节点启动报错:ER_GRP_RPL_REGISTER_TRX: Error registering transaction in slave group repository. 这是因为在slave节点上执行了insert语句,触发了这个错误。Group Replication的默认一致性级别是STRICT,slave上不允许写操作。 修复:登录slave节点,执行SET @@GLOBAL.group_replication_consistency = 'EVENTUAL'; 然后START GROUP_REPLICATION; 即可。

来源4

问题现象:MySQL组复制从节点无法启动,日志报ER_GRP_RPL_REGISTER_TRX错误。 原因:从节点存在未提交的事务,与组复制冲突。 远程修复步骤:1. 停止从节点group_replication;2. 执行SET GLOBAL group_replication_consistency='EVENTUAL'; 3. RESET SLAVE ALL; 4. START GROUP_REPLICATION; 测试通过。

来源5

在MySQL Group Replication中,从节点执行DML时报错:ERROR 3665 (HY000): ER_GRP_RPL_REGISTER_TRX: Error registering transaction in slave group repository. 这是由于group_replication_consistency设置为BEFORE,导致从节点写操作被拒绝。 快速修复:mysql> SET GLOBAL group_replication_consistency = 'EVENTUAL'; mysql> STOP GROUP_REPLICATION; mysql> START GROUP_REPLICATION;

MySQL ER_GRP_RPL_REGISTER_TRX报错远程修复教程

来源6

GR从节点启动失败,错误日志:[ERROR] Plugin group_replication reported: 'ER_GRP_RPL_REGISTER_TRX: Error registering transaction in slave group repository' 解决方案是临时设置group_replication_consistency= EVENTUAL,然后重启GR模块即可正常启动。

FAQ
Q: 为什么会出现ER_GRP_RPL_REGISTER_TRX错误?
A: 因为Group Replication默认一致性级别限制了从节点的写操作。
Q: 修复后会不会影响数据一致性?
A: EVENTUAL级别是最终一致性,适合大多数场景,不会丢失数据。
Q: 需要重启MySQL服务吗?
A: 不需要,只需重启group_replication模块。
Q: 主节点也要设置吗?
A: 主节点不需要,从节点设置即可。