MySQL 无法启动,因为它找不到 mysql-bin.000006 (Errcode 2),我该如何解决?

Cyb*_*ull 4 mysql osx-mountain-lion ampps

MySQL(AMPPS 的一部分)突然停止工作。查看mysql.err它说它无法启动,因为它找不到mysql-bin.000006(错误 2)。

这是来自 mysql.err 的完整日志:

130401 17:00:47 InnoDB: The InnoDB memory heap is disabled
130401 17:00:47 InnoDB: Mutexes and rw_locks use GCC atomic builtins
130401 17:00:47 InnoDB: Compressed tables use zlib 1.2.3
130401 17:00:47 InnoDB: Initializing buffer pool, size = 128.0M
130401 17:00:47 InnoDB: Completed initialization of buffer pool
130401 17:00:47 InnoDB: highest supported file format is Barracuda.
130401 17:00:49  InnoDB: Waiting for the background threads to start
130401 17:00:50 InnoDB: 1.1.8 started; log sequence number 193114266
/Applications/AMPPS/mysql/bin/mysqld: File './mysql-bin.000006' not found (Errcode: 2)
130401 17:00:50 [ERROR] Failed to open log (file './mysql-bin.000006', errno 2)
130401 17:00:50 [ERROR] Could not open log file
130401 17:00:50 [ERROR] Can't init tc log
130401 17:00:50 [ERROR] Aborting

130401 17:00:50  InnoDB: Starting shutdown...
130401 17:00:50  InnoDB: Shutdown completed; log sequence number 193114266
130401 17:00:50 [Note] /Applications/AMPPS/mysql/bin/mysqld: Shutdown complete
Run Code Online (Sandbox Code Playgroud)

这是所有二进制日志文件所在的目录:

drwx------  128 cyberskull  admin      4352 Mar 31 02:46 redacted
-rw-rw----    1 cyberskull  admin   5242880 Apr  1 17:00 ib_logfile0
-rw-rw----    1 cyberskull  admin   5242880 Mar 31 02:46 ib_logfile1
-rw-rw----    1 cyberskull  admin  44040192 Apr  1 17:00 ibdata1
drwxr-xr-x@  74 cyberskull  admin      2516 Jan 30 22:31 mysql
-rw-rw----    1 cyberskull  admin   2053929 Mar 18 23:18 mysql-bin.000001
-rw-rw----    1 cyberskull  admin  44002874 Mar 23 19:40 mysql-bin.000002
-rw-rw----    1 cyberskull  admin  25182139 Mar 25 20:59 mysql-bin.000003
-rw-rw----    1 cyberskull  admin  21533910 Mar 28 19:51 mysql-bin.000004
-rw-rw----    1 cyberskull  admin  32820396 Mar 29 18:45 mysql-bin.000005
-rw-rw----    1 cyberskull  admin       114 Mar 30 14:33 mysql-bin.index
-rw-rw----@   1 cyberskull  admin    114303 Apr  1 17:00 mysql.err
drwxr-xr-x@  20 cyberskull  admin       680 Jan 30 22:31 performance_schema
drwxr-xr-x@   2 cyberskull  admin        68 Jan 30 22:31 test
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能让 MySQL 重新启动并运行?

Rol*_*DBA 6

选项1

只需将二进制日志移到一边并启动 mysql

mv mysql-bin.* ..
Run Code Online (Sandbox Code Playgroud)

然后,启动mysql

选项#2

编辑文件mysql-bin.index并删除具有mysql-bin.0000006

然后,启动mysql

试一试 !!!

  • 从日志文件中删除最后一行似乎可以解决问题。 (2认同)