Error number: MY-014002; Symbol: ER_RPL_REPLICA_CONNECTED_TO_SOURCE_RPL_STARTED_GTID_BASED; SQLSTATE: HY000
Message: Replica receiver thread%s: connected to source ’%s@%s:%d’ with server_uuid=%s, server_id=%d. Starting GTID-based replication.
MY-014002(ER_RPL_REPLICA_CONNECTED_TO_SOURCE_RPL_STARTED_GTID_BASED)错误是MySQL中常见的复制错误,其SQLSTATE值为HY000。
错误说明
MY-014002(ER_RPL_REPLICA_CONNECTED_TO_SOURCE_RPL_STARTED_GTID_BASED)错误是MySQL官方定义的复制错误,指的是在源服务器上采用基于GTID的复制时,复制服务器在被认为已连接到源服务器上,且复制服务器已在以GTID模式开始时,复制失败。
常见案例
此错误一般发生在一个主服务器已配置开启了GTID模式且做为复制服务器时,一个复制实例已连接到源实例,源实例状态已变为 GTID,但是却尝试以非 GTID 模式连接,比如主服务器的transaction序列号无法在复制服务器上匹配,这时就会报这个错,因为此时已变为基于GTID模式,而复制实例却尝试以非GTID 模式连接。
解决方法
解决这一错误最简单的方法是修改主服务器上的配置,在主服务器上将 GTID 模式改为非 GTID 模式,或者修改主服务器上的 GTID_PURGED 变量的值,使其与要连接的实例的 GTID_PURGED 变量的值一致。另外,在复制服务器上也要谨慎配置相关参数,以避免发生这类错误。