【发布时间】:2012-06-26 16:53:08
【问题描述】:
我有 2 个 SQL 服务器:A 和 B。在 A 上,我有一个存储过程,它处理来自 B 的一些数据,然后将结果转储到 A 上的表中。我需要安排一个作业来运行这个过程。
根据http://msdn.microsoft.com/en-us/library/ms189064(SQL.105).aspx,运行作业时使用的是作业所有者。 (不能在 TSQL 步骤/作业的作业步骤上设置“运行方式”。)
网络人员设置这些机器/安全性的方式是使用第三台服务器 C,其上存储有集中登录。所以我的登录名是:SERVERC\SEAN。此登录名可以访问数据库服务器 A 和 B。如果我在登录并连接到服务器 A 时执行,则 proc 运行良好。
所以我将job owner设置为SERVERC\SEAN,但是job运行的时候报错信息是: “以用户身份执行:NT AUTHORITY\NETWORK SERVICE。用户 SERVERC\SERVERA$ 登录失败”
为什么它作为网络服务和一些奇怪的登录组合运行,而不是按照指示作为作业所有者运行?我如何让它发挥作用?
谢谢
【问题讨论】:
-
你是如何执行这项工作的?
-
我不确定你的意思,“如何”?这是一个预定的工作。如果我让调度程序运行它,或者我通过 Management Studio 执行它,它就会失败。
标签: sql-server security login jobs