我已经在一对服务器上设置了复制.一个是主人,第二是奴隶.
最近在master上将binlog文件清除得太早(通过文件名清除,因此mysql尚未阻止过早删除文件).
现在,SLAVE具有状态:
Got fatal error 1236 from master when reading data from binary log: ‘Could not find first log file name in binary log index file’
我将不会还原丢失的binlog文件,因此从站将从完成的那一刻开始重新读取.
这些文件已经存在,但是如何强制master取消“ unpurge”它的日志列表(因此它们在SHOW BINARY LOGS中可见)?
解决方法:
好吧,我做到了.但是,此解决方案并非百分百安全.
我已将所有文件名输入到mysql-bin.index
find /var/log/mysql/ -wholename '/var/log/mysql/mysql-bin.0*' | sort > mysql-bin.index
(如果要使用它,请先检查mysql-bin.index文件中的文件名格式,然后根据需要进行调整)
然后重新启动mysql,然后mysql在启动时重新加载该文件.
MASTER已准备就绪.
现在足够了
SLAVE STOP;
和
SLAVE START;
在SLAVE上,它将继续他的工作.