在 SQL Server 中设置链接服务器(我们在 2005 中)时,您可以设置两个服务器选项:
- 远程过程调用
- 远程过程调用输出
看看MSDN 文章,其中只声明了:
RPC-从指定服务器启用 RPC。
RPC Out - 启用 RPC 到指定的服务器。
我的问题是,为什么我需要设置这些选项?通过在链接服务器上启用 Rpc 我能做什么/不能做什么?将这些选项设置为 true 有什么缺点吗?
编辑:
但要执行远程存储过程,您需要启用“RPC Out”设置。您什么时候需要启用“RPC”设置?
答案1
在此上下文中,RPC 的一个示例是存储过程。要链接另一台服务器并在其上运行 sp,您需要设置 RPC Out 选项。
—安德斯
答案2
我知道这是一个老问题,但它作为搜索中的第一个链接返回。我只是在@chankster 的回答中添加了一些细节,并给出了何时使用它。我没有足够的声望来将其作为评论发布。我在https://dba.stackexchange.com/a/107042/70662. 根据msdn 博客SQL Server 链接服务器上的 RPC 与 RPC Out 对比如下:
- RPC-此设置主要用于称为远程服务器。根据博客,它指出您不会在 SQL Server 2005 及更高版本中使用它。除非您收到类似以下错误:
18482 “无法连接到服务器 '%.*ls',因为 '%.*ls' 未定义为远程服务器。请验证您是否指定了正确的服务器名称。%.*ls。”
- RPC Out - 设置与 SQL Server 2005 及更高版本上的链接服务器非常相关。如果未启用此功能,您可能会收到以下错误消息:
消息 7411,级别 16,状态 1,第 1 行服务器“myLinkedServer”未配置为 RPC。
应该说RPC出去应被启用。
答案3
我知道这已经过时了,但我偶然发现了以下信息。RPC 实际上什么也不做。您只需要启用 RPC OUT。