最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
如何在Windows下将MySQL注册为系统自启服务?
时间:2026-07-04 10:38:03 编辑:袖梨 来源:一聚教程网
必须以管理员身份运行终端,否则mysqld --install一定失败;需右键开始选“终端(管理员)”,cd /d切到bin目录并确认mysqld.exe存在,推荐显式指定服务名如MySQL80且路径不含尾部反斜杠,注册成功后须用sc config或services.msc设启动类型为“自动”并手动启动。
必须以管理员身份运行终端,否则 mysqld --install 一定失败。这不是命令写错,是 Windows UAC 拦截了服务注册操作——普通 CMD 或 PowerShell 窗口执行只会报 Access is denied 或静默无响应。
管理员权限下执行 mysqld --install 的正确姿势
右键「开始」→ 选「终端(管理员)」或「命令提示符(管理员)」,别用搜索框点开的普通窗口;
用 cd /d C:mysqlbin 切到 MySQL 的 bin 目录(/d 支持跨盘符,比单纯 cd 可靠);
先 dir mysqld.exe 确认文件存在,再跑注册命令。
- 服务名不加参数默认为
MySQL,但若系统已有同名服务(旧版残留、Installer 装过),mysqld --install会静默失败,不报错也不提示 - 保险做法是显式指定带版本号的服务名:
mysqld --install MySQL80 --defaults-file="C:mysqlmy.ini" - 服务名不能含空格或特殊字符:
MySQL 8.0❌,MySQL80✅ - 路径含空格(如
C:Program FilesMySQL)时,整个mysqld命令必须用英文双引号包裹:"C:Program FilesMySQLMySQL Server 8.0binmysqld" --install MySQL80
mysqld --install 成功 ≠ 服务能启动
注册只把服务写进 Windows 服务管理器,真正启动时才校验配置和目录。常见卡点全在 my.ini 和初始化上:
-
--defaults-file必须是绝对路径,且文件必须已存在;省略则按固定顺序找配置(根目录 → Windows 目录 →etc),极易漏掉 -
basedir和datadir路径末尾不能带反斜杠:C:mysql❌,C:mysql✅ -
datadir必须为空(首次安装)且 MySQL 进程要有完全控制权限(给NETWORK SERVICE用户加“完全控制”) - 没初始化就启动?日志里会反复出现
Can't open the mysql.plugin table—— 先跑mysqld --initialize --console
设置开机自动启动的两种可靠方式
服务注册成功后,services.msc 就能看见对应条目。改启动类型这步容易被跳过,但缺它就白注册:
- 图形方式:右键服务 → 属性 → 启动类型选「自动」→ 应用 → 再手动点一次「启动」(状态是「已停止」时,光改类型不启动,下次开机也不会拉起)
- 命令方式:
sc config MySQL80 start= auto(注意start=后面有空格) - 别选「自动(延迟启动)」:它等系统基础服务就绪后再拉 MySQL,开发或生产环境建议纯「自动」
- 验证是否生效:
net start | findstr MySQL80,或重启后立刻查服务状态
最常被忽略的是 datadir 权限和 my.ini 中路径末尾的反斜杠——看着一样,Windows 却会拒绝启动,错误日志只报模糊的「系统错误 1067」,得翻 DESKTOP-XXX.err 才能定位。
相关文章
- 高德地图路线规划显示异常怎么办 07-09
- 漫蛙漫画官方版正版ios如何安装 07-09
- 胖东来官网地址-胖东来官方网站入口地址 07-09
- investopedia官网中文版入口-investopedia国内能用的官方网页版入口地址 07-09
- 一点文学txt小说网站入口-一点文学小说官网入口地址2026最新 07-09
- 易校园怎么绑定微信 07-09