流水报错Slave failed to initialize relay log info structure from the repository

  其他常见问题
内容纲要

概要描述


出现了Txsql主从节点流水不同的情况,具体表现日志里:[ERROR] Slave SQL: Slave failed to initialize relay log info structure from the repository,slave流水全面停滞且无法启动slave(slave数据损坏)。需要reset slave来修复流水

详细说明


流水修复的方案:
进流水停滞的slave节点的pod中,执行如下操作:

cd /usr/bin/txsql/tools
./txsql.sh dump all.sql #导出all.sql文件
./txsql.sh manual_mode enable #进入manual模式,在该模式下服务不会重启
./txsql.sh kill phxbinlogsvr #kill binlog进程,禁止slave自动拉取binlog
./txsql.sh localshell

mysql> set global super_read_only=0; 设置super用户读写mysql权限
mysql> set global read_only=0;设置普通用户读写mysql权限
mysql> set sql_log_bin = 0;设置本次连接mysql的session里面所输入的语句都不会被计入bin_log里面
mysql> stop slave;停止slave
mysql> reset slave;清除slave上的同步位置,删除所有旧的同步日志,使用新的日志重新开始
mysql> reset master;将删除所有的二进制日志,创建一个.000001的空日志。RESET MASTER并不会影响SLAVE服务器上的工作状态,所以盲目的执行这个命令会导致slave找不到master的binlog,造成同步失败。
mysql> source all.sql;导入 all.sql文件
mysql> exit 退出

./txsql.sh manual_mode disable 退出manual模式

其他信息


如果当前节点的流水停滞了,但是流水却没有落后于master,可以直接使用txsql.sh kill mysql

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。