解决 XAMPP 中的 “MySQL shutdown unexpectedly” 错误

在使用 XAMPP 进行网站开发时,您可能会遇到 “MySQL shutdown unexpectedly” 的错误,导致 MySQL 无法启动。这个问题通常由 端口冲突、数据文件损坏 或 配置错误 引起。本文将为您提供有效的解决方案。

错误原因

  1. 端口冲突
    MySQL 默认使用 3306 端口。如果该端口已被其他程序占用,MySQL 将无法启动。

  2. 数据文件损坏
    如 ibdata1 或 mysql/data 目录中的文件损坏,可能会导致 MySQL 无法启动。

  3. 配置错误
    my.ini 文件中的配置错误或权限问题也可能引发此错误。

解决方法

步骤1:以管理员身份运行XAMPP

  • 关闭XAMPP

  • 右键点击XAMPP图标,选择“以管理员身份运行”

  • 尝试重新启动MySQL

步骤2:检查端口冲突

  • 打开命令提示符并输入:

yaml
netstat -ano | findstr 3306
  • 如果3306端口已被占用,请在 my.ini 文件中修改端口:

ini
port=3307
  • 保存并重启MySQL

步骤3:从备份恢复数据文件

  • 关闭XAMPP

  • 将 C:\xampp\mysql\data 重命名为 data_old

  • 将 C:\xampp\mysql\backup 复制并粘贴为新的 data 文件夹

  • 从 data_old 中复制除 mysql、performance_schema 和 phpmyadmin 之外的数据库文件夹到新的 data

  • 将 ibdata1 从 data_old 复制到新的 data

  • 启动MySQL

步骤4:查看错误日志

  • 打开 C:\xampp\mysql\data 文件夹中的 mysql_error.log,查看详细错误信息

结论

XAMPP 中的“MySQL shutdown unexpectedly”错误可能会打断开发流程,但通过上述方法你可以迅速定位并解决问题。

如需帮助,请访问我们的官网 https://upnet.com.vn,我们提供 7×24 小时技术支持服务。