1 问题描述
启动XAMPP中的mysql时报错,错误信息是:3306端口被占用
2 问题诊断
2.1 可能是在安装XAMPP之前安装了MySQL,这样电脑中就有两个MySQL啦,如果我们在安装时都采用的是默认配置,那么就会出现端口被占用的情况
2.2 注册表中的mysql设置的ImagePath路径是之前安装的MySQL
3 解决办法01
修改XAMPP中mysql的配置,将其mysql的端口设置成非3306
配置文件中修改的地方
修改完XAMPP中mysql的配置文件过后,先关掉本地的mysql服务
如何进入系统服务管理
计算机 -> 右键 -> 系统服务
关闭掉mysql服务过后重新启动XAMPP中的mysql,观察mysql启动是否成功
在三少的电脑上只能用三个字来形容,那就是 “然并卵”
4 解决办法02
修改注册表中mysql的ImagePath设置
如何打开注册表
计算机 -> 右键 -> 注册表
注册表打开后根据下面的路径找到mysql的ImagePath设置
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL] 中的ImagePath 修改成XAMPP的mysqld的执行目录
类似:"D:\xampp\mysql\bin\mysqld"
三少本地的MySQL的ImagePath路径设置为:"D:\install\Java\MySQL\bin\mysqld" --defaults-file="D:\install\Java\MySQL\my.ini" MySQL
三少XAMPP中的MySQL的ImagePath路径为:"D:\install\XAMPP\mysql\bin\mysqld" --defaults-file="D:\install\XAMPP\mysql\my.ini" MySQL
修改完注册表后重新启动XAMPP中的mysql,观察启动是否成功
启动成功,问题解决
5 新问题
即使我将注册表改回原来本地mysql的设置,在启动本地的mysql时就会报错
待解决......2017年8月15日22:49:27
将注册表改回原来的本地的mysql设置,然后重启电脑后就可以解决啦 2017年8月16日08:31:29
如果重新启动电脑后还是不行,那就先关闭mysql服务,然后再手动打开mysql服务就可以啦(Windows在启动时会根据注册表自动打开mysql服务)
相关博客:点击前往