MySQL服务需设为手动启动以避免开机自启干扰;在services.msc中右键属性修改启动类型为手动,或用管理员CMD执行sc config 服务名 start= demand;验证用sc qc 服务名查看START_TYPE为0x3且net start无输出。

Windows系统中MySQL服务被错误设为“自动启动”后,每次开机都强制拉起进程,导致资源占用或与开发环境冲突,需立即切回“手动”模式避免干扰。
确认当前MySQL服务名称
按下 Win + R,输入 services.msc 回车,打开服务管理器;在列表中查找服务名,常见为 MySQL、MySQL80 或 MySQL57——【务必记下确切名称,大小写和数字都不能错】;若完全找不到该服务,说明尚未注册,此操作不适用,请先完成服务注册再调整启动类型。
图形界面一键改为手动
在 services.msc 中右键目标 MySQL 服务 → 选择「属性」→ 在「常规」选项卡下拉「启动类型」→ 选中「手动」→ 点击「应用」→ 再点「确定」;这一步不会停止正在运行的服务,仅改变下次开机行为;如果当前服务处于「正在运行」状态,需额外执行「停止」操作(右键 → 停止),否则它仍会持续占用端口和内存。
命令行快速切换(推荐)
方法一:管理员权限运行 PowerShell 或 CMD,执行:
sc config MySQL80 start= demand
让 Windows 桌面程序在开机时静默自启并隐藏到系统托盘。特别适用于 Flutter、Electron 等无视 VBS/ProcessStartInfo 窗口样式、难以隐藏的顽固应用。提供「VBS 启动器 + Python ctypes/Win32 API」的隐藏窗口方案,可稳定把窗口收进托盘且不闪控制台。
注意:【等号前后绝对不能有空格】,输成 start = demand 会静默失败;demand 是 Windows 内部标识“手动启动”的代码,不是单词 demand 的字面意思;服务名请按你实际查到的替换,如 MySQL、MySQL57。
方法二:若只想临时停用且不改配置,直接终止进程:
net stop MySQL80
这条命令立刻结束服务,但不修改启动策略,重启后仍会按原设置(自动/手动)响应;适合调试时秒级关停。
验证是否生效
执行命令:sc qc MySQL80;查看输出中的 START_TYPE 字段,若显示 0x3 即代表已成功设为手动;再执行 net start | findstr MySQL80,若无任何输出,说明服务当前未运行,符合手动模式预期。

















