问题描述:
因为近期处理数据的需要,想用下本机许久没有启动的Mysql(Windows环境下),发现竟然启动失败,在err日志文件中(文件名为机器名称+win.err)显示如下错误:
mysqld: File.binlog.000005 not found (OS errno 2 - No such file or directory)
2024-11-11T01:11:20.153111Z 0 [ERROR] [MY-010958] [Server] Could not open log file.
2024-11-11T01:11:20.154277Z 0 [ERROR] [MY-010041] [Server] Cant init tc log
2024-11-11T01:11:20.155642Z 0 [ERROR] [MY-010119] [Server] Aborting
解决的办法:
提示找不到 binlog.000005文件,由于打不开这个文件,因此启动终止。这个是MySQL运行时使用的二进制日志文件,主要用于记录更改数据的语句,这里由于不知何种原因被删除了,造成MySQL服务无法正常启动。
经过研究,发现MySQL的二进制日志文件索引放在binlog.index中,下面是出现MySQL不能启动时的文件内容:
.binlog.000004
.binlog.000005
可以看到最后一个文件为binlog.000005,解决的办法很简单,就是删除binlog.index文件,这样MySQL将默认重建binlog.000001二进制日志文件,MySQL服务正常启动!
原文参考:https://blog.csdn.net/starshine/article/details/125865192