When setting up a linked server in SQL Server (we're on 2005), you can set two server options:

  • Rpc
  • Rpc Out

Looking at the MSDN article, all it states is:

RPC - Enables RPC from the specified server.

RPC Out - Enables RPC to the specified server.

My question is, why would I need to set these options? What can I do / not do by enabling Rpc on a linked server? Does setting these options to true have any drawbacks?

EDIT:

But to execute the remote stored procedure, you'd need the "RPC Out" setting enabled. When would you ever need the "RPC" setting enabled?

link|improve this question
feedback

1 Answer

up vote 6 down vote accepted

An example of an RPC in this context is a stored procedure. To link another server and run an sp on it you'll need to set the RPC Out option.

-Anders

link|improve this answer
Thanks for the answer. I understand now that you need RPC Out enabled to execute a stored procedure on the linked server. Why would you ever need RPC enabled though? Why would you go through a linked server to execute a local procedure? Or am I missing something? – Aaron Daniels Jun 24 '09 at 14:01
There are many times when you may want to execute a stored procedure on a remote server. If you needed to make a bunch of changes to a remote database as part of a load process, executing a remote stored procedure would be the best method. – mrdenny Jun 24 '09 at 15:31
But to execute the remote stored procedure, you'd need the "RPC Out" setting enabled. When would you ever need the "RPC" setting enabled? – Aaron Daniels Jun 24 '09 at 18:18
When the linked server is more like a partnership than a client/server relationship. – chankster Jun 25 '09 at 9:47
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.