很久没有使用 XAMPP 进行 web 程序调试,下载了新版本的 XAMMP使用,发现系统休眠后,再启动 XAMPP 会出现 Mysql 无法启动的现象,错误日志如下:

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

原来以为是端口占用问题,一翻排查后,并非是端口占用引起的,好吧,Search 后,导致这个问题可能有下面3个方面的原因:

1、使用非管理员权限运行 XAMPP
2、数据库异退出
3、MySQL端口占用

第1和第3很容易排除,第2原因不容易查出,因为每次关闭软件前都是正常停止服务和退出 XAMPP 软件的,最终使用下面的方法解决:

1、首先,备份MySQL数据文件夹。将现有的/mysql/data文件夹重命名为/mysql/data_backup文件夹。
2、接下来,创建名为”data”的新文件夹,如上所示在/mysql文件夹下。
3、然后将所有内容从/mysql/backup复制到创建的新文件夹/mysql/data。
4、您需要将所有数据库文件夹从/mysql/data_backup文件夹复制到/mysql/data。
5、最后,将ibdata1文件从/mysql/data_backup复制到/mysql/data文件夹。此步骤将替换/mysql/data文件夹中的现有ibdata1文件夹。
6、一切准备就绪。现在,你可以尝试从 XAMP 控制面板应用实用工具再次启动 MySQL 服务器,它应该能正常启动了。

知识:文件ibdata1被称为MySQL系统表空间,它位于c:/xampp/mysql/data/mysql下。这个ibdata1文件包含 MySQL 数据库中的所有表和索引。因此,您必须将其从备份文件夹复制到新创建的文件夹。

以上操作后,当您重新启动MySQL服务器时,MySQL shutdown unexpectedly 错误应该消失了。

针对这个问题,有热心的老外做了个操作视频,也一并分享上来供大家参考:

***此处内容评论后可见***

温馨提示:此处为隐藏内容,需要评论或回复留言后可见

评论查看

发表回复

后才能评论

评论(8)