Mysql启动报错解决方案:Failed to open log (file './mysql-bin.000901', errno 2)

ps -ef|grep mysql
发现里边没有mysql进程,于是进行重启。

service mysqld start报错
查看错误日志
tail -100 /usr/local/mysql/var/iZ11yohng9aZ.err(主机名.err)

180223 15:31:51 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/var
180223 15:31:51 InnoDB: The InnoDB memory heap is disabled
180223 15:31:51 InnoDB: Mutexes and rw_locks use GCC atomic builtins
180223 15:31:51 InnoDB: Compressed tables use zlib 1.2.3
180223 15:31:51 InnoDB: Initializing buffer pool, size = 16.0M
180223 15:31:51 InnoDB: Completed initialization of buffer pool
180223 15:31:51 InnoDB: highest supported file format is Barracuda.
180223 15:31:51  InnoDB: Waiting for the background threads to start
180223 15:31:52 InnoDB: 5.5.42 started; log sequence number 106443096
/usr/local/mysql/bin/mysqld: File './mysql-bin.000901' not found (Errcode: 2)
180223 15:31:52 [ERROR] Failed to open log (file './mysql-bin.000901', errno 2)
180223 15:31:52 [ERROR] Could not open log file
180223 15:31:52 [ERROR] Can't init tc log
180223 15:31:52 [ERROR] Aborting

180223 15:31:52  InnoDB: Starting shutdown...
180223 15:31:53  InnoDB: Shutdown completed; log sequence number 106443096
180223 15:31:53 [Note] /usr/local/mysql/bin/mysqld: Shutdown complete

180223 15:31:53 mysqld_safe mysqld from pid file /usr/local/mysql/var/iZ11yohng9aZ.pid ended

可以看到,错误日志中出现的错误信息: Failed to open log (file './mysql-bin.000901', errno 2)

于是尝试解决方案如下:

cd /usr/local/mysql/var/
cp mysql-bin.index mysql-bin.index.bak(备份)
vi mysql-bin.index
删除其中的mysql-bin.000901

然后进行重启,mysql启动成功

原文地址:https://www.cnblogs.com/chenguoli/p/8462345.html