news 2026/5/4 9:25:03

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
解决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端口被占用的情况,希望对大家有所帮助。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/3 16:38:09

【synchronized 与 ReentrantLock + Condition 的深度对比 Plus版】

Java并发编程:synchronized 与 ReentrantLock Condition 的深度对比——从Monitor队列到惊群效应与精确唤醒前言正文一、每个Java对象天生都能当锁?Monitor的底层结构形象比喻:锁对象就像一个会议室。关键区别:二、synchronized的…

作者头像 李华
网站建设 2026/5/3 18:09:42

基于单片机的智能窗帘控制系统设计与实现

一、设计背景与核心需求 随着智能家居技术的发展,传统窗帘的手动操作已无法满足现代生活对便捷性、舒适性和节能性的需求。高层住宅大尺寸窗帘拉动费力、忘记关窗导致风雨侵入、光照过强影响室内环境等问题频发。基于单片机的智能窗帘控制系统,通过环境感…

作者头像 李华
网站建设 2026/5/3 5:45:08

Java 应用提供对接第三方接口的优雅高级写法

一、真正的高手,不是“调通接口”,而是“设计边界” 对接第三方接口,看似只是发个请求、拿个 JSON,但背后其实是——系统边界的协作与防御设计。 你面对的不是自己可控的代码,而是一个随时可能“变脸”的外部世界: 对方文档写着“此字段必传”,实际却返回 null 测试环境…

作者头像 李华
网站建设 2026/5/3 14:38:43

基于S7 - 1200 PLC的工业冷库等控制系统漫谈

基于S7-1200 PLC工业冷库控制系统 基于PLC的空调控制系统设计。 基于PLC的工业空调机组设计。基于PLC的冷风机组系统设计带解释的梯形图接线图原理图图纸,io分配,组态画面在工业领域,对于温度的精准控制至关重要,无论是冷库、空调…

作者头像 李华
网站建设 2026/4/30 19:06:48

鸿蒙Electron应用商业化效果评估:数据驱动的增长闭环

基于前文对商业化落地的探讨,本次将聚焦“鸿蒙Electron应用商业化效果评估体系”,从“核心指标构建、数据采集分析、优化迭代闭环”三个维度,提供可量化、可落地的评估方案,帮助开发者精准判断商业化健康度并高效优化。 鸿蒙Elect…

作者头像 李华
网站建设 2026/5/4 7:03:14

网络安全靶场推荐,让你通过实操能快速提升实战技能!

前言 自学网络安全知识,具备一定的理论基础,缺乏实战经验,想去网络靶场体验一下,通过实操能快速提升实战技能! 可推荐的网络靶场: 1、春秋云境.com:平台涵盖350CVE靶标和10套大型仿真场景&am…

作者头像 李华