“访问被拒绝”错误,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 服务帐户。