我正在尝试在SQL Server 2008 R2上运行一个简单的跟踪选择语句,但它失败了。
当我尝试通过SQL Server代理作业调用以下语句时失败,SQL Server代理的服务帐户是Administrator组的一部分,并且在服务器和SQL Server实例上具有完全SA访问权限。
当我从查询分析器运行时,同样的命令工作正常,它只是让我疯狂,我失踪的地方。好的是同样的选择是从SQL Server 2005实例运行而没有问题。
如果有人遇到此问题,请告知我们。
也是以完全权限共享跟踪文件的文件夹。
SELECT top 1 SAT = id, SAF = [Path]
FROM sys.traces
WHERE [path] like 'C:\AuditTrace\SA%'
ORDER by id
运行上述语句后出错是通过Sql Agent进行的
以用户身份执行:dbo。您无权运行'SYS.TRACES'。 [SQLSTATE 42000](错误8189)。步骤失败了。
忘记提及此特定语句包含在存储过程中,该存储过程存在于除master之外的其他用户数据库中。
答案 0 :(得分:0)
请尝试以下操作:
GRANT ALTER TRACE TO <user>
https://msdn.microsoft.com/en-us/library/cc293611.aspx
此外,请记住,必须设置用户permissions才能允许您这样做。