美好的一天,
我在运行一个相同的T-SQL步骤的SQL 2005实例上有2个作业。该步骤对远程2005实例执行跨服务器查询。这些工作之间的唯一区别是一个由系统管理员拥有,另一个不是。
sysadmin拥有的作业在Agent的启动帐户下执行,而不由sysadmin拥有的作业在作业所有者的帐户下执行。到目前为止一切都很好。
但是,sysadmin拥有的作业尝试使用TCP / IP连接到链接服务器,另一个使用命名管道。我知道这一点,因为非sysadmin作业失败并出现Named Pipes连接错误。我不想通过命名管道连接,因为它不支持Kerberos。只配置了一个链接服务器,因此两个查询都在使用它,并且在链接服务器中没有与网络协议相关的属性。
注意,我知道如果我希望连接成功,远程服务器需要监听命名管道,但这不是我的问题。我的问题是为什么sysadmin帐户attemtpt使用TCP / IP进行连接而非sysadmin帐户尝试使用命名管道进行连接?
我继续重现这一点,所以这不是侥幸(至少不在我的环境中)。我错过了一些配置设置吗?谁能解释一下呢?
非常感谢。
答案 0 :(得分:0)
可能是在sysadmin配置文件下,使用CliConfg.exe实用程序为服务器设置了别名。