MySQL Error number: MY-013121; Symbol: ER_SLAVE_RELAY_LOG_READ_FAILURE; SQLSTATE: HY000 报错 故障修复 远程处理

文档解释

Error number: MY-013121; Symbol: ER_SLAVE_RELAY_LOG_READ_FAILURE; SQLSTATE: HY000

Message: Relay log read failure: %s

错误说明

MY-013121,也就是ER_SLAVE_RELAY_LOG_READ_FAILURE,是MySQL错误码,表明从模式的MySQL服务器无法读取中继日志,出现这个错误的代码的SQLSTATE值是HY000。

常见案例

当中继日志不可用或不存在,从MySQL数据库服务器试图读取中继日志时,这个错误就会显示出来。另外,当从服务器正在读取中继日志时,在一段时间出现网络错误时,也会让这个错误出现。

解决方法

第一步是检查系统是否有客户端和服务器之间的网络连接。如果有,那么重启从模式的MySQL服务器,因为未使用的中继日志文件可能会在服务器重新启动后被删除。

如果重新启动无济于事,可以重新分配中继日志安全性,可以直接通过设置slave_skip_errors选项来绕过中继日志错误。要这样做,可以将slave_skip_errors选项设置为一些mysql错误代码(‘1397’, ‘1398’, ‘1399’),同时忽略掉1397,1398和1399错误代码,此时从模式的MySQL服务器可以开始恢复服务。

如果重新分配安全性也行不通的话,可以重新配置中继日志文件,这比重新分配安全性更为复杂,并且前提条件是服务器可以重启。首先将中继日志服务器的文件参数设置为null,而不是当前的文件名,然后重新启动服务器。当服务器再次启动时,MySQL将为中继日志文件分配新的文件名,服务器就可以重新恢复运行了。


数据运维技术 » MySQL Error number: MY-013121; Symbol: ER_SLAVE_RELAY_LOG_READ_FAILURE; SQLSTATE: HY000 报错 故障修复 远程处理