如何在Windows系统上配置MySQL作为服务随开机自动启动?

P粉602998670

P粉602998670

2026-07-31

196人浏览

原创

mysql服务在windows上自动开机启动需先注册为系统服务,再将启动类型设为“自动”;若服务未注册(如解压版常见),仅改启动类型无效,必须以管理员身份执行mysqld --install并指定正确my.ini路径,之后手动启动一次服务方可生效。

如何在windows系统上配置mysql作为服务随开机自动启动?

MySQL服务在Windows上不会自动开机启动,除非它已被注册为系统服务且启动类型设为“自动”——这两步缺一不可,很多人只改了启动类型却忘了先注册服务,结果重启后服务压根不出现。

确认MySQL服务是否已注册

打开 services.msc,查找服务名是否为 MySQLMySQL80 或类似名称。如果列表里完全找不到,说明服务尚未注册,图形界面设置启动类型毫无意义。

  • 官方安装包(MySQL Installer)通常默认注册服务;ZIP解压版、手动部署版几乎从不自动注册
  • 检查方式:管理员权限运行CMD,执行 sc query mysql80(把 mysql80 换成你预期的服务名),若返回“[SC] EnumQueryServicesStatus:OpenService FAILED 1060”,即服务不存在
  • 别依赖“MySQL目录下有 mysqld.exe”就认为服务已就绪——那只是可执行文件,不是注册项

mysqld --install 注册服务(关键一步)

服务未注册时,必须先执行注册命令,否则后续所有设置都无效。这步最容易被跳过或路径写错。

MySQL(Linux)
MySQL(Linux)

MySQL 9.6.0是面向Linux平台的2026年创新版本,核心架构迎来重大革新。其将外键约束与级联操作从InnoDB引擎层上移至SQL层,确保所有数据变更均被完整记录至Binlog,彻底解决了CDC(变更数据捕获)与主从复制中的数据不一致难题。此外,该版本引入container_aware启动选项以原生适配容器环境,并对审计日志进行了组件化重构,为追求极致数据一致性与云原生体验的开发者提供了全新选择。

下载
  • 以管理员身份运行CMD或PowerShell
  • 切换到MySQL的 bin 目录,例如:cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"
  • 执行注册命令:mysqld --install MySQL80 --defaults-file="C:\Program Files\MySQL\MySQL Server 8.0\my.ini"
  • --defaults-file 路径必须准确,含空格时必须用英文双引号包裹;路径错误会导致注册成功但开机启动失败(错误日志在 data 目录下的 hostname.err 中)
  • 若提示“Failed to install service”,优先检查:tasklist | findstr mysqld 是否有残留进程、my.inidatadir 指向的目录是否存在且权限完整

设置启动类型为“自动”并立即启动

注册成功后,services.msc 就能看见对应服务条目,但“启动类型=自动”不等于“服务已运行”——必须手动启动一次,否则下次开机仍不会拉起进程。

  • 右键服务 → 属性 → 启动类型选“自动”(不是“自动(延迟启动)”),点“应用”
  • 务必点击下方“启动”按钮,让服务进入“正在运行”状态;否则仅改类型,开机时仍处于“已停止”
  • 命令行等效操作:sc config MySQL80 start= auto(注意等号前后不能有空格),再执行 net start MySQL80
  • 验证是否生效:sc qc MySQL80 输出中 START_TYPE0x2 表示“自动”;net start | findstr MySQL80 应能输出服务名

为什么设置了“自动”但开机仍不启动?

最常被忽略的是配置文件和权限细节,而非服务开关本身。

  • my.inibasedirdatadir 路径含中文、空格或符号时,Windows服务加载会静默失败(查 hostname.err 日志可见“Can't change dir to”类报错)
  • 服务账户权限不足:默认使用“本地系统”账户,但如果 datadir 在非系统盘或受NTFS权限限制的路径,需在服务属性→“登录”选项卡中改用有读写权限的账户
  • 端口冲突未暴露:服务启动时若3306被占用,会直接退出,但图形界面可能只显示“已停止”,需看错误日志确认
  • 服务名拼写错误:sc config mysql80 对大小写不敏感,但 mysql80MySQL80 是同一服务;而 mysql(全小写)可能是另一个旧服务,务必核对清楚

真正卡住人的从来不是“怎么点开服务管理器”,而是注册时路径少了一个引号、datadir 权限没放开、或者以为改了启动类型就万事大吉——结果重启后连服务条目都看不到。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

mysql windows系统

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
mysql修改数据表名
mysql修改数据表名

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:‘SHOW TABLES;’;2、修改表名,代码为:‘ALTER TABLE 旧表名 RENAME [TO] 新表名;’。php中文网还提供MySQL的相关下载、相关课程等内容,供大家免费下载使用。

2023.06.20

1116

6

MySQL创建存储过程
MySQL创建存储过程

存储程序可以分为存储过程和函数,MySQL中创建存储过程和函数使用的语句分别为CREATE PROCEDURE和CREATE FUNCTION。使用CALL语句调用存储过程智能用输出变量返回值。函数可以从语句外调用(通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。php中文网还提供MySQL创建存储过程的相关下载、相关课程等内容,供大家免费下载使用。

2023.06.21

753

5

mongodb和mysql的区别
mongodb和mysql的区别

mongodb和mysql的区别:1、数据模型;2、查询语言;3、扩展性和性能;4、可靠性。本专题为大家提供mongodb和mysql的区别的相关的文章、下载、课程内容,供大家免费下载体验。

2023.07.18

452

5

mysql密码忘了怎么查看
mysql密码忘了怎么查看

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql密码忘了怎么办呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.19

1332

5

mysql创建数据库
mysql创建数据库

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql怎么创建数据库呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.25

1828

4

mysql默认事务隔离级别
mysql默认事务隔离级别

MySQL是一种广泛使用的关系型数据库管理系统,它支持事务处理。事务是一组数据库操作,它们作为一个逻辑单元被一起执行。为了保证事务的一致性和隔离性,MySQL提供了不同的事务隔离级别。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

2023.08.08

616

3

sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.11

2176

4

mysql忘记密码
mysql忘记密码

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。那么忘记mysql密码我们该怎么解决呢?php中文网给大家带来了相关的教程以及其他关于mysql的文章,欢迎大家前来学习阅读。

2023.08.14

1922

7

mysql事务隔离级别
mysql事务隔离级别

mysql规范中定义了四种事务隔离级别,不同的隔离级别对事务的处理有所不同。本专题为大家提供mysql事务隔离级别相关的文章内容,大家可以免费体验。

2023.08.16

2352

11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL vs MySQL
PostgreSQL vs MySQL

共1课时 | 115人学习

使用phpenv集成环境安装极致CMS
使用phpenv集成环境安装极致CMS

共2课时 | 221人学习

phpEnv手册
phpEnv手册

共0课时 | 0人学习