sql server 2012 - SQL सर्वर एक्सप्रेस 2012 के लिए दूरस्थ कनेक्शन सक्षम करें




sql-server-2012 remote-connection (11)

SQL Server 2014 स्थानीय रूप से इंस्टॉल किए गए इंस्टेंस के साथ मेरा एक ही समस्या था। FQDN\InstanceName का उपयोग करके कनेक्ट करना विफल हो जाएगा, जबकि केवल मेरे hostname\InstanceName का उपयोग करके कनेक्ट किया गया। उदाहरण के लिए: mycomputername\sql2014 का उपयोग करके mycomputername\sql2014 काम किया, लेकिन mycomputername.mydomain.org\sql2014 का उपयोग नहीं किया। DNS को सही ढंग से हल किया गया, एसक्यूएल कॉन्फ़िगरेशन मैनेजर के भीतर टीसीपी / आईपी सक्षम किया गया था, विंडोज फ़ायरवॉल नियम जोड़े गए (और फिर यह सुनिश्चित करने के लिए फ़ायरवॉल बंद कर दिया गया कि यह कुछ भी अवरुद्ध नहीं कर रहा है), लेकिन इनमें से कोई भी समस्या को हल नहीं करता है।

अंत में, मुझे SQL सर्वर पर " SQL सर्वर ब्राउज़र " सेवा प्रारंभ करना पड़ा और यह कनेक्टिविटी समस्या को ठीक कर दिया।

मुझे कभी एहसास नहीं हुआ था कि SQL सर्वर ब्राउज़र सेवा ने वास्तव में कनेक्शन बनाने में SQL सर्वर की सहायता की है; मैं इस धारणा के तहत था कि जब आप कनेक्ट करने के लिए "अधिक ब्राउज़ करें" सर्वर पर क्लिक करते हैं तो यह ड्रॉपडाउन को पॉप्युलेट करने में मदद करता है, लेकिन यह वास्तव में पोर्ट पोर्ट को स्पष्ट रूप से असाइन नहीं किया गया है, तो इसका उपयोग करने के लिए सही पोर्ट # के साथ क्लाइंट अनुरोधों को संरेखित करने में मदद करता है। कैसे वेबसाइट बाइंडिंग एक आईआईएस वेब सर्वर पर एक ही मुद्दे को कम करने में मदद करता है जो एकाधिक वेबसाइटों को होस्ट करता है)।

यह कनेक्ट आइटम मुझे SQL सर्वर ब्राउज़र सेवा के बारे में सुराग देता है: https://connect.microsoft.com/SQLServer/feedback/details/589901/unable-to-connect-on-localhost-using-fqdn-machine-name

  • जब आप सर्वर नाम के रूप में wstst05 \ sqlexpress का उपयोग करते हैं, तो क्लाइंट कोड मशीन नाम को आवृत्ति नाम से अलग करता है और wstst05 नेटबीओस नाम के विरुद्ध तुलना की जाती है। मुझे उनके मिलान के लिए कोई समस्या नहीं दिखती है और कनेक्शन स्थानीय माना जाता है। वहां से, हम SQL ब्राउज़र से संपर्क किए बिना आवश्यक जानकारी पुनर्प्राप्त करते हैं और किसी भी समस्या के बिना साझा मेमोरी के माध्यम से SQL इंस्टेंस से कनेक्ट होते हैं।
  • जब आप wstst05.capatest.local \ sqlexpress का उपयोग करते हैं, तो क्लाइंट कोड netbios नाम (wstst05) पर नाम (wstst05.capatest.local) की तुलना में विफल रहता है और कनेक्शन "रिमोट" मानता है। यह डिजाइन द्वारा है और हम निश्चित रूप से भविष्य में इसे सुधारने पर विचार करेंगे। वैसे भी, रिमोट कनेक्शन पर विचार करने और तथ्य यह है कि यह एक नामित उदाहरण है, ग्राहक निर्णय लेता है कि इसे नाम समाधान के लिए SQLBrowser का उपयोग करने की आवश्यकता है। यह wstst05.capatest.local (यूडीपी पोर्ट 1434) पर SQL ब्राउज़र से संपर्क करने का प्रयास करता है और स्पष्ट रूप से वह भाग विफल रहता है। इसलिए आपको जो त्रुटि मिलती है।

TechNet से "SQL सर्वर ब्राउज़र" सेवा का कारण (मेरे द्वारा जोर दिया गया): https://technet.microsoft.com/en-us/library/ms181087(v=sql.120).aspx

"SQL सर्वर ब्राउज़र का उपयोग करके" अनुभाग से:

यदि SQL सर्वर ब्राउज़र सेवा नहीं चल रही है, तो आप अभी भी सही पोर्ट नंबर या नामित पाइप प्रदान करते हुए SQL सर्वर से कनेक्ट करने में सक्षम हैं। उदाहरण के लिए, यदि आप पोर्ट 1433 पर चल रहे हैं तो आप टीसीपी / आईपी के साथ SQL सर्वर के डिफ़ॉल्ट उदाहरण से कनेक्ट कर सकते हैं। हालांकि, यदि SQL सर्वर ब्राउज़र सेवा नहीं चल रही है, तो निम्न कनेक्शन काम नहीं करते हैं :

  • कोई भी घटक जो सभी पैरामीटर (जैसे टीसीपी / आईपी पोर्ट या नामित पाइप) को पूरी तरह से निर्दिष्ट किए बिना नामित इंस्टेंस से कनेक्ट करने का प्रयास करता है
  • कोई भी घटक जो सर्वर \ इंस्टेंस जानकारी उत्पन्न करता है या पास करता है जिसे बाद में अन्य घटकों द्वारा पुन: कनेक्ट करने के लिए उपयोग किया जा सकता है।
  • बंदरगाह संख्या या पाइप प्रदान किए बिना नामित उदाहरण से कनेक्ट करना
  • टीसीपी / आईपी पोर्ट 1433 का उपयोग न करने पर नामित उदाहरण या डिफ़ॉल्ट उदाहरण के लिए डीएसी।
  • ओलाप पुनर्निर्देशक सेवा।
  • SQL सर्वर प्रबंधन स्टूडियो, एंटरप्राइज़ प्रबंधक, या क्वेरी विश्लेषक में सर्वर का आकलन।

यदि आप क्लाइंट-सर्वर परिदृश्य में SQL सर्वर का उपयोग कर रहे हैं (उदाहरण के लिए, जब आपका एप्लिकेशन किसी नेटवर्क पर SQL सर्वर तक पहुंच रहा है), यदि आप SQL सर्वर ब्राउज़र सेवा को रोक या अक्षम करते हैं , तो आपको प्रत्येक उदाहरण के लिए एक विशिष्ट पोर्ट नंबर असाइन करना होगा और हमेशा उस पोर्ट नंबर का उपयोग करने के लिए अपने क्लाइंट एप्लिकेशन कोड लिखें। इस दृष्टिकोण में निम्नलिखित समस्याएं हैं :

  • यह सुनिश्चित करने के लिए कि यह उचित बंदरगाह से कनेक्ट हो रहा है, आपको क्लाइंट एप्लिकेशन कोड को अपडेट और बनाए रखना होगा।
  • प्रत्येक इंस्टेंस के लिए आपके द्वारा चुने गए पोर्ट का उपयोग सर्वर पर किसी अन्य सेवा या एप्लिकेशन द्वारा किया जा सकता है, जिससे SQL सर्वर का उदाहरण अनुपलब्ध हो सकता है।

और "SQL सर्वर ब्राउज़र वर्क्स कैसे करता है" अनुभाग से उसी लेख से अधिक जानकारी:

चूंकि SQL सर्वर का केवल एक उदाहरण पोर्ट या पाइप का उपयोग कर सकता है , इसलिए अलग-अलग पोर्ट नंबर और पाइप नाम SQL सर्वर एक्सप्रेस सहित नामित उदाहरणों के लिए असाइन किए जाते हैं। डिफ़ॉल्ट रूप से, सक्षम होने पर, दोनों नामित उदाहरण और SQL सर्वर एक्सप्रेस को डायनामिक पोर्ट्स का उपयोग करने के लिए कॉन्फ़िगर किया गया है, यानी SQL सर्वर प्रारंभ होने पर एक उपलब्ध पोर्ट असाइन किया गया है। यदि आप चाहते हैं, तो SQL सर्वर के उदाहरण के लिए एक विशिष्ट पोर्ट असाइन किया जा सकता है। कनेक्ट करते समय, ग्राहक एक विशिष्ट पोर्ट निर्दिष्ट कर सकते हैं; लेकिन यदि पोर्ट गतिशील रूप से असाइन किया गया है, तो पोर्ट नंबर किसी भी समय SQL सर्वर को पुनरारंभ किया जा सकता है, इसलिए सही पोर्ट नंबर क्लाइंट के लिए अज्ञात है। ... जब SQL सर्वर क्लाइंट SQL सर्वर संसाधनों का अनुरोध करते हैं, तो क्लाइंट नेटवर्क लाइब्रेरी पोर्ट 1434 का उपयोग कर सर्वर पर एक यूडीपी संदेश भेजता है। SQL सर्वर ब्राउज़र अनुरोधित आवृत्ति के TCP / IP पोर्ट या नामित पाइप के साथ प्रतिक्रिया करता है। क्लाइंट एप्लिकेशन पर नेटवर्क लाइब्रेरी बंदरगाह या इच्छित आवृत्ति के नामित पाइप का उपयोग कर सर्वर को अनुरोध भेजकर कनेक्शन को पूरा करती है

मैंने बस अपने होम सर्वर पर SQL सर्वर एक्सप्रेस 2012 स्थापित किया है। मैं अपने डेस्कटॉप पीसी से विजुअल स्टूडियो 2012 से कनेक्ट करने की कोशिश कर रहा हूं, और बार-बार ज्ञात त्रुटि प्राप्त कर रहा हूं:

SQL सर्वर से कनेक्शन स्थापित करते समय नेटवर्क से संबंधित या इंस्टेंस-विशिष्ट त्रुटि आई। सर्वर नहीं मिला था या पहुंच योग्य नहीं था। सत्यापित करें कि इंस्टेंस नाम सही है और SQL सर्वर दूरस्थ कनेक्शन की अनुमति देने के लिए कॉन्फ़िगर किया गया है। (प्रदाता: नामित पाइप्स प्रदाता, त्रुटि: 40 - SQL सर्वर से कनेक्शन नहीं खोल सका)

मैंने इसे ठीक करने का प्रयास करने के लिए क्या किया है:

  • सर्वर पर SQL सर्वर कॉन्फ़िगरेशन प्रबंधक चलाएं और SQL सर्वर ब्राउज़र सक्षम करें
  • स्थानीय सबनेट पर टीसीपी, बंदरगाह 1433 और 1434 के लिए सर्वर पर एक विंडोज फ़ायरवॉल अपवाद जोड़ें।
  • सत्यापित करें कि मेरे पास डेस्कटॉप पर लॉग इन किए गए उपयोगकर्ता के लिए SQL सर्वर इंस्टेंस पर लॉगिन है।
  • सत्यापित करें कि मैं SQL सर्वर उदाहरण पर Windows प्रमाणीकरण का उपयोग कर रहा हूं।
  • बार-बार SQL सर्वर और पूरे डांग सर्वर को पुनरारंभ करें।
  • मेरे सभी बाल बाहर खींचो।

रिमोट कनेक्शन की अनुमति देने के लिए मैं SQL सर्वर 2012 एक्सप्रेस कैसे प्राप्त कर सकता हूं !?


SQL सर्वर 2012 डेवलपर संस्करण की स्थापना पर, डिफ़ॉल्ट सेटिंग्स के साथ स्थापित, मुझे बस SQL ​​सर्वर कॉन्फ़िगरेशन प्रबंधक -> SQL सर्वर नेटवर्क कॉन्फ़िगरेशन -> MSSQLSERVER के लिए प्रोटोकॉल लोड करना पड़ा और अक्षम करने के लिए अक्षम से टीसीपी / आईपी बदलना पड़ा।


आप इस समस्या को हल करने के लिए इसका उपयोग कर सकते हैं:

स्टार्ट> निष्पादित करें, और CLICONFG.EXE चलाएं।

नामित पाइप्स प्रोटोकॉल सूची में सबसे पहले होगा। इसे हटाएं, और टीसीपी / आईपी को बढ़ावा दें।

आवेदन पूरी तरह से परीक्षण करें।

मुझे आशा है कि यह मदद मिलेगी।


आप भी सेट कर सकते हैं

सभी को सुनो

प्रोटोकॉल संवाद में फिर आईपी पते आईपी 1 (कहना) में

हाँ को सक्षम सेट करें,

वर्ष का आईपी पता परिभाषित करें,

खाली करने के लिए टीसीपी गतिशील सेट करें

टीसीपी पोर्ट 1433 (या जो कुछ भी)



जांच करने के लिए एक और बात यह है कि आपने नामित उदाहरण सही ढंग से लिखा है!

समस्या निवारण कनेक्शन समस्याओं में यह आलेख बहुत उपयोगी है: SQL सर्वर डेटाबेस इंजन से कनेक्ट करने का समस्या निवारण कैसे करें


मुझे कॉन्फ़िगरेशन मैनेजर के माध्यम से पोर्ट जोड़ना था और मेरे एसक्यूएल कनेक्शन [होस्ट] \ [डीबी इंस्टेंस नाम] में पोर्ट नंबर जोड़ना था , 1433

Instancename और बंदरगाह के बीच, (अल्पविराम) ध्यान दें


मुझे यूडीपी पोर्ट 1434 खोलने के लिए फ़ायरवॉल इनबाउंड पोर्ट नियम जोड़ना पड़ा। यह एक SQL सर्वर ब्राउज़र सुनता है।


मेरे मामले में डेटाबेस गैर मानक बंदरगाह पर चल रहा था। जांचें कि जिस पोर्ट को आप कनेक्ट कर रहे हैं वह उसी पोर्ट के समान है जो डेटाबेस चल रहा है। यदि SQL सर्वर के अधिक उदाहरण हैं, तो सही जांचें।


मैं "रोस्सी कासिम" का तरीका पसंद करता हूं क्योंकि आईपी पर विस्तार विन्यास की आवश्यकता नहीं है।

जब मैं फिर से एक और सर्वर की कोशिश करता हूं तो मैं इसे फिर से भूल जाऊंगा।

एसक्यूएल सर्वर ब्राउज़र सेवा को आसानी से सक्षम करके इसे सरल बेवकूफ (KISS) रखें, फिर सर्वर से कनेक्ट करते समय आईपी के पीछे \ SQLEXPRESS जोड़ें।

"\ SQLEXPRESS" के बिना आईपी का उपयोग करके डायरेक्ट विफलता का मुद्दा था क्योंकि यह डिफ़ॉल्ट पोर्ट का उपयोग नहीं करता है।

धन्यवाद।


एक और चीज़...

Kyralessa महान जानकारी प्रदान करता है लेकिन मेरे पास इस आलेख के बाद भी स्टंप हो जाने के लिए एक और चीज है।

SQL सर्वर नेटवर्क कॉन्फ़िगरेशन> सर्वर के लिए प्रोटोकॉल> टीसीपी / आईपी सक्षम के तहत। राइट क्लिक टीसीपी / आईपी और गुणों का चयन करें। आईपी ​​पते के तहत आपको उपयोग किए जा रहे प्रत्येक कनेक्शन प्रकार के लिए सक्षम करने के लिए हाँ को सेट करने की आवश्यकता है।





sql-server-2012-express