最近,有个客户服务器上的MYSQL数据库经常出问题,出问题时网站表现为连接不上数据库,于是远程登录服务器发现MYSQL没有启动,手动启动MYSQL,启动不成功,重装MYSQL后可恢复正常,但过阵子又会出现相同问题。
于是静下心来寻找根本原因,通过查看服务器错误日志,发现MYSQL错误提示如下:
InnoDB:Attemptedtoopenapreviouslyopenedtablespace.Previoustablespace数据库名/数据表名usesspaceID:2atfilepath:.\数据库名\数据表名.ibd.Cannotopentablespacemysql/innodb_index_statswhichusesspaceID:2atfilepath:.\mysql\innodb_index_stats.ibd
Formoreinformation,seeHelpandSupportCenterathttp://www.mysql.com.
经过多番调试,得出如下解决方案:
在my.ini中添加一行代码即可,具体代码为:
innodb_force_recovery=1
至此MYSQL启动错误InnoDB:Attemptedtoopenapreviouslyopenedtablespace.的问题完美解决,再遇到这个问题不用再重装MYSQL了,分享给遇到相同问题的朋友。
另附上Windows查看服务器错误日志的方法:
在“计算机”上点右键—“管理”
依次展开节点“诊断”—“事件查看器”—“Windows日志”—“应用程序”,即可查看相应的错误日志