重启后 SQL Server 没有自启怎么办?
机器重启后 SQL Server 服务未自动启动的常见原因:启动类型被改、开机顺序、域账户延迟,以及恢复自启的正确设置方法。
简短答案
多半是服务启动类型被改成了「手动」。把 SQL Server(数据库引擎)及需要的 SQL Server Agent 服务的启动类型改回「自动」,开机就会自启。域账户登录有延迟时,服务会多等一会儿,属正常现象。
现象对照
| 现象 | 原因 | 处理 |
|---|---|---|
| 开机后服务处于停止状态 | 启动类型为手动 | 改为自动 |
| 开机过一会儿服务才起来 | 域账户登录延迟 | 正常,或改本机构建账户 |
| 服务在启动/停止中循环 | 引擎启动失败(见服务启动排查) | 读错误日志定位 |
操作步骤
- 打开「服务」管理器(
services.msc),找到SQL Server (实例名)。 - 右键 → 属性 → 启动类型选自动;备份依赖它的 SQL Server Agent 服务同样设自动。
- 确认「登录」页签的账户有效:域账户密码过期/被锁会让自启静默失败。
- 重启机器验证:开机后
Get-Service MSSQL$实例名应为 Running;在 SSMS 里能连上。 - 用 PowerShell 快速改启动类型:
Set-Service -Name "MSSQLSERVER" -StartupType Automatic # 默认实例
Set-Service -Name "MSSQL`MyInstance" -StartupType Automatic # 命名实例
实例名与 Windows 服务名的对应:默认实例的服务名是
MSSQLSERVER,命名实例是MSSQL$实例名;多实例机器上别改错对象。
操作小结
- 自启失效先查启动类型,改回自动。
- 域账户问题会导致静默失败,核对账户有效。
- 重启验证 + SSMS 能连才算恢复。