尝试在 Windows 2012 Server 上自动备份 MsSQL 数据库时,会引发以下异常,因此不会进行备份:
描述:备份过程中遇到错误。错误:[Microsoft.SqlServer.Management.Common.ExecutionFailureException:服务器主体“NT AUTHORITY\SYSTEM”无法在当前安全上下文下访问数据库“TestDB”。BACKUP DATABASE 异常终止。执行 Transact-SQL 语句或批处理时发生异常。]
尝试在 Windows 2012 Server 上自动备份 MsSQL 数据库时,会引发以下异常,因此不会进行备份:
描述:备份过程中遇到错误。错误:[Microsoft.SqlServer.Management.Common.ExecutionFailureException:服务器主体“NT AUTHORITY\SYSTEM”无法在当前安全上下文下访问数据库“TestDB”。BACKUP DATABASE 异常终止。执行 Transact-SQL 语句或批处理时发生异常。]
我们有 2 个实例,并且 NB MSSQL 作业失败,我们只是在 sysadmin 下以安全角色添加 (NT AUTHORITY\SYSTEM) 并重新启动 Netbackup 服务。NB SQL Jobs 开始工作。
显然,对于 MsSQL 2012 及更高版本,BUILTIN\administrators 和本地系统 (NT AUTHORITY\SYSTEM) 不会自动配置为 sysadmin 服务器角色。因此,只需将 sysadmin 角色添加到 NT AUTHORITY\SYSTEM 即可,一切正常。
这可以通过扩展在对象资源管理器中完成: