当前位置: 首页 > news >正文

解决phpstudy_pro 无法启动 MySQL 以及3306被占用的问题

问题说明

首先我们在启动mysql服务的时候,服务无法启动,而且一直重试。

一、是否真的是端口占用

  1. 启动 phpstudy_pro,点击 MySQL 的「启动」按钮,若弹出错误提示:

MySQL 启动失败:端口 3306 被占用 或 Port 3306 is already in use,则确认是端口占用问题。

  1. 补充:默认 MySQL 端口为 3306,若已修改过端口,以提示的端口号为准(如 3307、3308 等)。

二、查找占用端口的进程(分系统操作)

(一)Windows 系统(最常用)

方法 1:通过 phpstudy_pro 自带工具查询

  • 打开 phpstudy_pro → 点击左侧「工具」→ 选择「端口占用查询」→ 输入端口号(如 3306)→ 点击「查询」→ 直接显示占用进程名称和 PID。

方法 2:通过命令行查询

  1. 按下 Win+R → 输入 cmd 打开命令提示符(管理员模式更佳);
  1. 输入命令查询 3306 端口占用:

netstat -ano | findstr "3306"

  1. 结果中最后一列的数字是「PID(进程标识符)」,记录该 PID;
  1. 继续输入命令查询 PID 对应的进程名称:

tasklist | findstr "PID号"

(例:tasklist | findstr "1234",会显示进程名如 mysqld.exe、wampmysqld.exe 等)。

(二)Mac/Linux 系统

  1. 打开终端(Terminal);
  1. 输入命令查询 3306 端口占用:

lsof -i :3306

netstat -tulpn | grep 3306

  1. 结果中「PID」列是进程 ID,「COMMAND」列是进程名称(如 mysqld、docker-proxy 等)。

三、解决端口占用(两种核心方案)

方案 1:关闭占用端口的进程(推荐优先尝试)

适用于:占用进程是其他 MySQL 服务、冗余软件(如 WAMP、XAMPP、Docker 容器)等可关闭的程序。

Windows 系统关闭进程:

方法 1:通过任务管理器关闭

  • 按下 Ctrl+Shift+Esc 打开任务管理器 → 切换到「详细信息」标签 → 按 PID 排序找到对应进程 → 右键「结束任务」。

方法 2:通过命令行强制关闭

  • 命令提示符中输入:

taskkill /f /pid PID号

(例:taskkill /f /pid 1234,/f 表示强制关闭)。

Mac/Linux 系统关闭进程:

  • 终端输入命令(替换 PID 号):

sudo kill -9 PID号

(例:sudo kill -9 1234,-9 表示强制终止)。

方案 2:修改 MySQL 端口(适用于无法关闭占用进程的场景)

若占用进程是系统核心进程、必要软件(如不可关闭的数据库服务),则修改 phpstudy_pro 的 MySQL 端口:

  1. 打开 phpstudy_pro → 找到对应的 MySQL 服务(如「MySQL 8.0」)→ 点击右侧「设置」→ 选择「端口设置」;
  1. 将默认端口 3306 修改为未被占用的端口(如 3307、3308、3310 等,建议选 3306-3399 之间的空闲端口);
  1. 点击「应用」→ 重启 MySQL 服务(点击「停止」再「启动」);
  1. 关键补充:修改端口后,项目连接 MySQL 时需同步更新端口号(如 PHP 配置文件、Navicat 等工具的连接设置)。

四、验证解决方案是否生效

  1. 重新点击 phpstudy_pro 中 MySQL 的「启动」按钮,若状态栏显示「运行中」,则成功;
  1. 辅助验证:通过命令行查询新端口是否被占用(如修改为 3307,则执行 netstat -ano | findstr "3307"),确认只有 phpstudy 的 MySQL 进程占用该端口;
  1. 测试连接:用 Navicat 或项目代码连接 MySQL,主机填 localhost,端口填修改后的端口(如 3307),用户名 / 密码不变,能正常连接则彻底解决。

五、常见问题补充(避坑指南)

  1. 问题:修改端口后仍启动失败?

解决:检查新端口是否仍被占用(换一个端口重试),或重启 phpstudy_pro 再试。

  1. 问题:Windows 系统中提示「无法终止进程,访问被拒绝」

解决:以「管理员模式」打开命令提示符或任务管理器,再执行关闭操作。

  1. 问题:Docker 占用 3306 端口(常见)

解决:要么停止对应的 Docker 容器(docker stop 容器ID),要么修改 MySQL 端口,不建议直接关闭 Docker 服务(若需使用)。

  1. 问题:端口查询显示「0.0.0.0:3306」被占用,但找不到进程

解决:可能是系统残留的 TCP 连接,重启电脑后再尝试(重启能释放大部分占用端口)。

总结

以上是解决mysql服务无法启动,或者3306端口被占用的情况,希望对大家有所帮助。

http://www.cnnetsun.cn/news/136926.html

相关文章:

  • 音乐平台歌曲盗版维权全攻略:权利卫士录屏取证+可信时间戳认证实操指南
  • 根据您提供的 package.json 片段,涉及的 @vue/cli-plugin-babel 和 @vue/cli-service 版本为 ~4.2.0。以下是针对该版本的详细解决方案,结合相关依
  • electron-egg打包win7
  • 8种网络故障分析及测试命令大全
  • 新人必看盘点知名CTF练习靶场,从零基础入门到精通,收藏这一篇就够了!
  • Pythonselenium自动化测试实战项目
  • 关于Comtos Linux (朱雀)主体源码的选择
  • 超级Mini小车功能说明
  • STC32G12单片机替换成STC32F12单片机,直接替换的结果
  • SIEMENS 6SL3210-1PE33-0CL0 变频器
  • 软件测试常用的7种方法,最后一个是升职加薪关键!(零基础小白转行IT互联网高效进阶)
  • 【RTOS】EasyLog的移植与使用
  • 在数据库里玩“平行宇宙”:MatrixOne Data Branch 让数据也拥有Git 的分支/合并/对比/回滚(含跨集群同步)
  • 基于单片机的全自动洗衣机系统的设计
  • 5.6 模型部署与智能体集成实战
  • 基于单片机的球赛计分牌的设计
  • ArcGIS Pro 从入门到实战基础篇(10):地图菜单
  • Kotaemon与Redis/Memcached集成:构建高速缓存层
  • 【鸿蒙三方库编译】lycium_plusplus(lycium++)高效完成鸿蒙C/C++编译
  • 2025年度GEO服务商权威甄选指南:技术深度与商业价值的双重考量
  • 收藏备用!Java程序员转AI大模型:从技术沉淀到AI爆发的进阶之路
  • Python 爬虫实战:Session 会话维持爬取需登录内容
  • 基于移相全桥变换器的电池充电仿真模型,采用电压电流双闭环PI控制。 电池先经历CC模式而后进入...
  • 基于COMSOL模拟的水力压裂技术研究:固体力学与达西定理的应用
  • Redis 性能调优(二)
  • Doris 性能调优实践指南(可直接落地)
  • presum|二分try+滑窗cnt
  • Web自动化测试:Unittest单元测试框架
  • Apache2最佳实践
  • 实力派,也可以是偶像派