आपको कभी-कभी लिंक किए गए सर्वर पर "RPC आउट" विकल्प को सक्षम करने की आवश्यकता हो सकती है। यह विकल्प RPC को दिए गए सर्वर पर सक्षम बनाता है।
RPC,दूरस्थ प्रक्रिया कॉल के लिए खड़ा है। RPC मूल रूप से एक संग्रहीत कार्यविधि है जिसे सर्वर 1 से लिंक किए गए सर्वर 2 पर दूरस्थ रूप से चलाया जा रहा है।
यदि आप इसे सक्षम नहीं करते हैं और आप लिंक किए गए सर्वर पर एक संग्रहीत कार्यविधि को निष्पादित करने का प्रयास करते हैं, तो संभवतः आपको त्रुटि संदेश 7411 मिलेगा जो आपको बता रहा है कि सर्वर RPC के लिए कॉन्फ़िगर नहीं किया गया है।
वैसे भी, आप SQL सर्वर प्रबंधन स्टूडियो (SSMS) का उपयोग करके या T-SQL के साथ इस विकल्प को सक्षम/अक्षम कर सकते हैं।
SSMS में, आप Linked Server Properties
. पर जा सकते हैं लिंक किए गए सर्वर के नाम पर राइट-क्लिक करके। वहां से, Server Options
पर क्लिक करें , जहां आपको RPC Out
दिखाई देगा विकल्प या तो True
. पर सेट है या False
।
T-SQL में आप sp_serveroption
. का उपयोग कर सकते हैं सिस्टम संग्रहीत प्रक्रिया एक ही काम करने के लिए।
उदाहरण
यहां sp_serveroption
का उपयोग करने का एक उदाहरण दिया गया है लिंक किए गए सर्वर पर "RPC आउट" सक्षम करने के लिए।
EXEC sp_serveroption 'MyLinkedServer', 'rpc out', 'true';
यह MyLinkedServer नामक लिंक किए गए सर्वर के लिए RPC आउट विकल्प को सक्षम करता है।
इस प्रक्रिया को क्रियान्वित करने का दूसरा तरीका पैरामीटर नामों को स्पष्ट रूप से नाम देना है:
EXEC sp_serveroption
@server = 'MyLinkedServer',
@optname = 'rpc out',
@optvalue = 'on';
तो आप देख सकते हैं कि पहला तर्क (@server
) लिंक किए गए सर्वर का नाम है, दूसरा (@optname
.) ) विकल्प का नाम और तीसरा तर्क निर्दिष्ट करता है (@optvalue
) इसका मान निर्दिष्ट करता है।
यही सब है इसके लिए। RPC आउट अब लिंक किए गए सर्वर पर सक्षम है।
आरपीसी आउट सेटिंग जांचें
हम निम्नलिखित कोड के साथ अपनी RPC आउट सेटिंग की जांच कर सकते हैं।
SELECT
is_rpc_out_enabled
FROM sys.servers
WHERE name = 'MyLinkedServer';
परिणाम:
+----------------------+ | is_rpc_out_enabled | |----------------------| | 1 | +----------------------+
1
. का मान इसका मतलब है कि आरपीसी आउट सक्षम है। 0
. का मान इसका मतलब है कि यह अक्षम है।
आरपीसी आउट अक्षम करना
आप False
का उपयोग कर सकते हैं True
. के बजाय इसे अक्षम करने के लिए।
EXEC sp_serveroption 'MyLinkedServer', 'rpc out', 'false';
उस कोड को निष्पादित करने से MyLinkedServer पर RPC आउट अक्षम हो जाएगा।
आप वैकल्पिक रूप से on
. का उपयोग कर सकते हैं और off
True
. के बजाय और false
इस विकल्प को टॉगल करने के लिए।