“拒绝访问”错误,SQL Server无法启动
适用于: SQL Server
症状
将 Microsoft SQL Server 服务配置为在对 SQL Server 安装文件夹没有足够的权限的帐户下运行时,SQL Server不会启动,并且会返回如下所示的错误消息,具体取决于尝试启动服务的方式:
使用服务小程序:
Windows 无法启动本地计算机上的SQL Server (MSSQLSERVER) 服务。
错误 5:拒绝访问。使用命令提示符:
C:\Users\username>NET START MSSQLSERVER
发生了系统错误 5。
访问被拒绝。
解决方案
打开系统日志,验证是否看到类似于以下内容的错误消息条目:
Log Name: System Source: Service Control Manager Date: <Datetime> Event ID: 7000 Task Category: None Level: Error Keywords: Classic User: N/A Computer: <Server name> Description: The SQL Server (MSSQLSERVER) service failed to start due to the following error: Access is denied.
使用 Microsoft SQL Server 配置管理器或服务控制管理器,记下SQL Server服务的服务帐户。
转到 SQL Server 安装文件夹 (例如
C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Binn
) ,执行以下操作以检查 SQL 服务帐户的有效访问权限:- 右键单击文件或文件夹,选择“ 属性”,然后选择“ 安全性 ”选项卡。
- 选择“ 高级”,选择“ 有效访问 ”选项卡,然后选择“ 选择用户 ”以键入 SQL 服务帐户或从列表中选择。
- 选择“ 查看有效 访问权限”以了解并解决权限问题。 例如,如果将“拒绝”权限添加到用户或SQL Server服务帐户所属的组,请删除“拒绝”权限并重启SQL Server服务。
注意
还可以使用 进程监视器 工具来识别和隔离权限问题。 进程监视器的示例输出的以下屏幕截图显示了<生成“拒绝访问”错误的 DomainName>\sqlsrvlogin SQL Server 服务帐户。