Error number: MY-010962; Symbol: ER_RPL_SLAVE_FILTER_CREATE_FAILED; SQLSTATE: HY000
Message: Slave: failed in creating filter for channel ‘%s’.
错误说明
ER_RPL_REPLICA_FILTER_CREATE_FAILED错误表明,在MySQL中创建复制过滤器时出错,这可能与请求的角色无关,例如MASTER或REPLICA有关。这是一个很少见的警告,只有在使用MySQL资源组复制时才会出现,但在发生时,可能导致连接失败,因此已禁用。
常见案例
ER_RPL_REPLICA_FILTER_CREATE_FAILED错误通常在以下两种情况下发生:
1)在使用从MySQL 8.0.19版开始的MySQL资源组复制时,当尝试创建复制过滤器时可能会发生此错误。例如,当某个MySQL实例成为一个新的复制节点时,它会尝试根据资源组创建一个复制过滤器,如果这一步失败,则该连接将被删除。
2)当单一MySQL实例更改了复制级别时,也可能发生此错误。
解决方法
1)如果ER_RPL_REPLICA_FILTER_CREATE_FAILED错误是由于使用MySQL资源组复制导致的,则可将MySQL复制级别设置为“NONE”,从而关闭复制,然后重新检查系统的复制状态,以确保系统具有恢复并正确复制到期望的资源组。
2)如果ER_RPL_REPLICA_FILTER_CREATE_FAILED错误是由于更改复制级别引起的,以更新复制过滤器,可以通过重新启动MySQL实例来解决此问题。在重新启动之前,最好检查复制级别,以确保它们正确设置,并保证实施新设置后系统可以正常工作。重新启动MySQL实例是最有效的解决方案,因为它将强制更新复制过滤器,重新同步数据并使复制恢复正常。