为什么在文件夹的“安全”选项卡中看不到 NT SERVICE\MSSQLSERVER 这个用户

原因说明:


从 Windows Server 2008 R2 / Windows 7 开始,SQL Server(尤其是默认实例)默认使用 虚拟服务账户(Virtual Account),格式为:

NT SERVICE\MSSQLSERVER        ← 默认实例
NT SERVICE\MSSQL$YourInstanceName  ← 命名实例(如 MSSQL$SQLEXPRESS)


这类账户是系统内置的、按服务隔离的虚拟账户,不会出现在“选择用户或组”对话框的搜索结果中,即使你点击“高级 → 查找位置”也找不到。
但这不代表它不存在——只要 SQL Server 正在以该账户运行,你就可以直接输入它的全名来添加权限。


✅ 正确添加权限的方法:

    1. 右键数据库文件所在的文件夹 → 属性 → 安全 → 编辑 → 添加。
    2. 在“输入对象名称来选择”框中,直接手动输入:

    

NT SERVICE\MSSQLSERVER


        (如果是命名实例,比如实例名叫 SQL2014,则输入:NT SERVICE\MSSQL$SQL2014)
          点击 “检查名称” 按钮:
          如果名称正确,系统会自动加下划线(如 NT SERVICE\MSSQLSERVER 变成带下划线的可识别主体)。
          如果提示找不到,请确认:
          实例名是否正确(区分大小写不敏感,但拼写要对);
          是否用了 $ 而不是其他符号;
          当前操作系统是否支持虚拟账户(Win7/Server 2008 R2 及以上都支持)。
    点击“确定”,然后赋予 “完全控制” 或至少 “修改 + 写入” 权限。
    应用并关闭。

白俊遥博客
请先登录后发表评论
  • 最新评论
  • 总共0条评论