配置数据库引擎访问的文件系统权限

适用于 SQL Server - 仅限 Windows

本文介绍如何向 SQL Server 数据库引擎 文件系统授予访问数据库文件存储位置的权限。 数据库引擎 服务必须具有 Windows 文件系统的权限才能访问存储数据库文件的文件夹。 在安装过程中配置对默认位置的权限。 如果将数据库文件放在其他位置,则可能必须按照这些步骤向 数据库引擎 授予完全控制该位置的权限。

在 SQL Server 2012 (11.x) 及更高版本中,将权限分配给每个服务的安全标识符 (SID)。 此系统可帮助提供更好的服务隔离和安全保护。 每个服务 SID 从服务名称派生得到,对每个服务是唯一的。 配置 Windows 服务帐户和权限一文介绍了每个服务 SID,并在 Windows 特权和权限部分中提供了相关名称。 必须为每个服务 SID 分配文件位置的访问权限。

向文件系统授予对每个服务 SID 的权限

  1. 使用 Windows 资源管理器,导航到存储数据库文件的文件系统位置。 右键单击文件系统文件夹,然后选择“属性”。

  2. 在“安全性”选项卡上,选择“编辑”,然后选择“添加”。

  3. 在“选择用户、计算机、服务帐户或组”对话框中,选择“位置”,在位置列表的顶部选择你的计算机名称,然后选择“确定”。

  4. 在“输入要选择的对象名称”框中,键入每个服务 SID 的名称。 若要找到它,请参阅配置 Windows 服务帐户和权限。 (对于每个服务 SID 名称的数据库引擎,请将 NT SERVICE\MSSQLSERVER 用于默认实例,或将 NT SERVICE\MSSQL$<InstanceName> 用于命名实例。)

  5. 选择“检查名称”以验证该条目。 (如果验证失败,它可能会建议你找不到该名称。选择“确定”时,将显示“找到多个名称”对话框。现在,选择每个服务 SID 名称 NT SERVICE\MSSQLSERVERNT SERVICE\MSSQL$<InstanceName>,然后选择“确定”。再次选择“确定”以返回到“权限”对话框。)

  6. 在“组或用户名”框中,选择每个服务 SID 名称,然后在“<名称> 的权限”框中,针对“完全控制”选中“允许”复选框。

  7. 选择“应用”,然后选择“确定”两次即可退出。