很久没有使用 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)
需要
需要.
很需要
需要
需要
需要
很需要
不错