MySQL Error number: MY-013466; Symbol: ER_GRP_RPL_RECOVERY_EVAL_ERROR; SQLSTATE: HY000 报错 故障修复 远程处理
文档解释
Error number: MY-013466; Symbol: ER_GRP_RPL_RECOVERY_EVAL_ERROR; SQLSTATE: HY000
Message: There was an issue when trying to evaluate the best distributed recovery strategy while joining.%s
错误说明
MySQL错误代号MY-013466,错误符号ER_GRP_RPL_RECOVERY_EVAL_ERROR属于SQLSTATE HY000类型错误,这是一种组件错误,表示在试图恢复一个复制组实例(Replication Group Instance)时发生错误。 >
常见案例
这个错误的发生的场景一般有:
1.某一个节点分支离群时会发生,即某一个节点在另一个节点重新恢复后(即使此节点进行了异步恢复),两个节点的在有新的数据行写入时不会完全一致;
2.当复制组中的用户尝试执行一个尝试更新数据库操作时,会出现此错误;
3.在启用或重新启用一个复制组实例时会发生,即当尝试进行异步恢复后仍然出现错误。
解决方法
1.采用“Reset Master”操作重置复制组;
2.在每个节点采用“Stop Slave,Reset Slave”操作重启复制;
3.在master端采用“SHOW SLAVE STATUS”和“SHOW SLAVE HOSTS”操作查看错误;
4.如果是异步恢复的复制组,可以考虑在每个节点上采用“Reset Slave All”操作来重置slave的恢复状态;
5.如果有MySQL的binlog文件,在master上采用“CHANGE MASTER TO”操作重置节点位置,并采用“–skip-slave-start”参数,在master端手动启动复制;
6.启用semi-sync模式并在slave上重新启动复制;
7.采用“STOP SLAVE”操作(如果mysql服务已经启动)暂停复制;
8.在master端采用“FLUSH TABLES WITH READ LOCK”操作将所有表锁定;
9.在master端采用“RELEASE TABLES”操作将所有表解锁;
10.采用“START SLAVE”操作重新开始复制。