为什么我无法访问链接的 MSDE 8.x 服务器上的存储过程?

为什么我无法访问链接的 MSDE 8.x 服务器上的存储过程?

我正在尝试通过针对父 SQL Server 2000 实例运行以下 SQL 在链接的 MSDE 8.x 服务器上执行存储过程...

DECLARE @RC int

EXECUTE @RC = [LINKED_SERVER_NAME].[LINKED_SERVER_DATABASE].[dbo].[STORED_PROCEDURE_NAME]

GO

...但我收到此错误消息:

Msg 7411, Level 16, State 1, Line 2
Server 'LINKED_SERVER_NAME' is not configured for RPC.

答案1

您可以使用 get-credentials 将凭据存储在 powershell 会话中,但我猜这不是您想要的。

Powershell 在启动它的人的上下文中运行(就像所有 Windows 可执行文件一样),因此对于 SQL Server 操作,我只需使用集成的 Windows 安全性进行连接,然后将正确的 SQL 权限分配给您设置为运行脚本的用户/服务帐户。这样,您就可以使用 Windows 中的安全模型,而不必自己制作 :-)

答案2

在 SQL Server Management Studio 中:

  1. 右键单击 MSDE 链接服务器实例并选择 [属性]
  2. 选择[服务器选项]
  3. 确保 [RPC] 和 [RPC Out] 属性设置为 [TRUE]

(在我的情况下它们都设置为 FALSE)

相关内容