文档解释
Error number: MY-013311; Symbol: ER_GRP_RPL_REGISTER_TRX_TO_WAIT_FOR_DEPENDENCIES_FAILED; SQLSTATE: HY000
Message: Error registering transaction from session ‘%u’ to wait for its dependencies to complete commit.
以上
MySQL错误 MY-013311(Symbol: ER_GRP_RPL_REGISTER_TRX_TO_WAIT_FOR_DEPENDENCIES_FAILED; SQLSTATE: HY000)是在群集复制中发生的语法错误,提供的消息是“错误的语法:无法将事务注册为等待其他事务的依赖项”。这意味着MySQL未能成功识别事务的依赖项,无法注册该事务以等待其结果。
这个错误通常在尝试在MySQL Group Replication 模式下运行复杂语句时发生,例如在一个事务中定义和执行两个或多个查询语句。此错误可能持续几秒钟,然后执行该请求时出现故障延迟或不可用行为。此bug累计了,导致了可能会将数据库操作出现故障,无法继续复制的问题。
要解决此急需,请在更新到最新的MySQL 5.7.24及其以上版本,它很可能已修复了此bug。另一个可能的解决方案是检查你的MySQL代码,确认它是否需要复杂的SQL语法,然后使用简单的语法来替代,以避免发生这个错误。另一种解决方法是使用MySQL Event Scheduler来定义此事务,代替将它们封装在一个事务中,以避免误差。最后,检查你的服务器以确保它们符合MySQL的系统要求,以及其它潜在的MySQL版本问题。