2016年01月06日   码农之路   8,563 次浏览

XAMPP出现异常时就会有以下提示:

09:27:52 [mysql ] Error: MySQL shutdown unexpectedly.
09:27:52 [mysql ] This may be due to a blocked port, missing dependencies,
09:27:52 [mysql ] improper privileges, a crash, or a shutdown by another method.
09:27:52 [mysql ] Press the Logs button to view error logs and check
09:27:52 [mysql ] the Windows Event Viewer for more clues
09:27:52 [mysql ] If you need more help, copy and post this
09:27:52 [mysql ] entire log window on the forums

其实单看以上这些错误信息根本就不能解决问题,百度上的方法也是千奇百怪,根本就没用。于是我从错误日志中找到以下错误信息:

InnoDB: Error: could not open single-table tablespace file .\mysql\innodb_index_stats.ibd
InnoDB: We do not continue the crash recovery, because the table may become
InnoDB: corrupt if we cannot apply the log records in the InnoDB log to it.
InnoDB: To fix the problem and start mysqld:
InnoDB: 1) If there is a permission problem in the file and mysqld cannot
InnoDB: open the file, you should modify the permissions.
InnoDB: 2) If the table is not needed, or you can restore it from a backup,
InnoDB: then you can remove the .ibd file, and InnoDB will do a normal
InnoDB: crash recovery and ignore that table.
InnoDB: 3) If the file system or the disk is broken, and you cannot remove
InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf
InnoDB: and force InnoDB to continue crash recovery here.
2015-12-30 09:27:51 5988 [Note] Plugin ‘FEDERATED’ is disabled.
2015-12-30 09:27:51 688 InnoDB: Warning: Using innodb_additional_mem_pool_size is DEPRECATED. This option may be removed in future releases, together with the option innodb_use_sys_malloc and with the InnoDB’s internal memory allocator.
2015-12-30 09:27:51 5988 [Note] InnoDB: The InnoDB memory heap is disabled
2015-12-30 09:27:51 5988 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
2015-12-30 09:27:51 5988 [Note] InnoDB: Compressed tables use zlib 1.2.3
2015-12-30 09:27:51 5988 [Note] InnoDB: Not using CPU crc32 instructions
2015-12-30 09:27:51 5988 [Note] InnoDB: Initializing buffer pool, size = 16.0M
2015-12-30 09:27:51 5988 [Note] InnoDB: Completed initialization of buffer pool
2015-12-30 09:27:51 5988 [Note] InnoDB: Highest supported file format is Barracuda.
2015-12-30 09:27:51 5988 [Note] InnoDB: The log sequence numbers 619803155 and 619803155 in ibdata files do not match the log sequence number 620046439 in the ib_logfiles!
2015-12-30 09:27:51 5988 [Note] InnoDB: Database was not shutdown normally!
2015-12-30 09:27:51 5988 [Note] InnoDB: Starting crash recovery.
2015-12-30 09:27:51 5988 [Note] InnoDB: Reading tablespace information from the .ibd files…
2015-12-30 09:27:51 5988 [ERROR] InnoDB: Attempted to open a previously opened tablespace. Previous tablespace deps/dep_codelist uses space ID: 2 at filepath: .\deps\dep_codelist.ibd. Cannot open tablespace mysql/innodb_index_stats which uses space ID: 2 at filepath: .\mysql\innodb_index_stats.ibd
InnoDB: Error: could not open single-table tablespace file .\mysql\innodb_index_stats.ibd
InnoDB: We do not continue the crash recovery, because the table may become
InnoDB: corrupt if we cannot apply the log records in the InnoDB log to it.
InnoDB: To fix the problem and start mysqld:
InnoDB: 1) If there is a permission problem in the file and mysqld cannot
InnoDB: open the file, you should modify the permissions.
InnoDB: 2) If the table is not needed, or you can restore it from a backup,
InnoDB: then you can remove the .ibd file, and InnoDB will do a normal
InnoDB: crash recovery and ignore that table.
InnoDB: 3) If the file system or the disk is broken, and you cannot remove
InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf
InnoDB: and force InnoDB to continue crash recovery here.

有了以上错误信息再结合百度,问题就迎刃而解了。具体方法是在mysql的my.ini文件的[mysqld]节点(大概在150行左右)中加如下代码:

innodb_force_recovery = 1

然后通过xampp启动mysql,成功。再停止mysql,把my.ini刚添加的行删除或注释掉,再启动mysql,正常使用。

为什么要重启下mysql呢?这是因为加上innodb_force_recovery=1,此参数值大于0时,可以对表进行select、create、drop操作,但insert、update或者delete这类操作是不允许的。

赞 赏
申明:除非注明,本站文章均为原创,转载请以链接形式标明本文地址。 如有问题,请于一周内与本站联系,本站将在第一时间对相关内容进行处理。
本文地址: http://www.yyjjssnn.cn/articles/707.html

>>> Hello World <<<

这篇内容是否帮助到你了呢?

如果你有任何疑问或有建议留给其他朋友,都可以给我留言。

:wink: :twisted: :surprised: :smile: :smile9: :smile8: :smile7: :smile6: :smile5: :smile56: :smile55: :smile54: :smile53: :smile52: :smile51: :smile50: :smile4: :smile49: :smile48: :smile47: :smile46: :smile45: :smile44: :smile43: :smile42: :smile41: :smile40: :smile3: :smile39: :smile38: :smile37: :smile36: :smile35: :smile34: :smile33: :smile32: :smile31: :smile30: :smile2: :smile29: :smile28: :smile27: :smile26: :smile25: :smile24: :smile23: :smile22: :smile21: :smile20: :smile1: :smile19: :smile18: :smile17: :smile16: :smile15: :smile14: :smile13: :smile12: :smile11: :smile10: :smile0: :sad: :rolleyes1: :redface: :razz: :question: :neutral: :mrgreen: :mad: :lol: :idea: :exclaim: :evil: :eek: :cry: :cool: :confused: :biggrin: :arrow:

友情链接: 程序员刘杨 刘杨
Copyright 2003~2018 保留所有权利 | 网站地图
备案号:湘ICP备14001005号-2

湘公网安备 43011102001322号