SQL Server एक्सप्रेस 2012/2016 पर लोकलहोस्ट से कनेक्ट नहीं हो सकता


97

मैंने अभी SQL एक्सप्रेस 2012 का नवीनतम संस्करण डाउनलोड किया है लेकिन मैं लोकलहोस्ट से कनेक्ट नहीं कर सकता। मैंने localhost \ SQLExpress और Windows प्रमाणीकरण की कोशिश की, लेकिन यह मुझे एक त्रुटि संदेश देता है जो कह सकता है कि कनेक्ट नहीं हो सकता। क्या मुझसे कोई चूक हो रही है? मैंने पहले SQL Server 2008 का उपयोग किया है और मैंने कभी भी लोकलहोस्ट से जुड़ने के मुद्दे नहीं उठाए हैं। ऐसा लगता है कि यह भी नहीं मिल रहा है। सेवाओं में भी मैं केवल एक SQL सर्वर VSS लेखक देखता हूं। क्या ऐसा ही होना चाहिए? या क्या मैं कुछ न कुछ भूल रहा हूं? धन्यवाद


1
लगता है कि स्थापना ठीक नहीं हुई। क्या आपने इसे पुनः स्थापित / पुन: स्थापित करने का प्रयास किया?
विकडर

1
क्या आप सुनिश्चित हैं कि आपको सर्वर के लिए इंस्टॉलर मिल गया है, जैसा कि प्रबंधन स्टूडियो इंस्टॉलर का कहना है?
डेमियन___बेलिवर

जवाबों:


182

हारून बर्टैंड के अनुसार :

  1. आपको सत्यापित करना होगा कि SQL सर्वर सेवा चल रही है। आप ऐसा कर सकते हैं Start > Control Panel > Administrative Tools > Servicesऔर जाँच कर रहे हैं कि सेवा SQL सर्वर ( SQLEXPRESS) चल रही है। यदि नहीं, तो इसे शुरू करें।

  2. जब आप सेवाओं के एप्लेट में हों, तो यह भी सुनिश्चित करें कि सेवा एसक्यूएल ब्राउज़र शुरू हो। यदि नहीं, तो इसे शुरू करें

  3. आपको यह सुनिश्चित करने की आवश्यकता है कि SQL सर्वर को टीसीपी / आईपी या नामित पाइप का उपयोग करने की अनुमति है। आप Start > Programs > Microsoft SQL Server 2012 > Configuration Tools(या SQL Server Configuration Manager) में SQL सर्वर कॉन्फ़िगरेशन प्रबंधक को खोलकर इन्हें चालू कर सकते हैं , और सुनिश्चित करें कि TCP / IP और नामांकित पाइप सक्षम हैं । यदि आपको SQL सर्वर कॉन्फ़िगरेशन प्रबंधक प्रारंभ मेनू में नहीं मिलता है तो आप MMC स्नैप-इन मैन्युअल रूप से लॉन्च कर सकते हैं। अपने संस्करण के अनुसार स्नैप-इन पथ के लिए SQL सर्वर कॉन्फ़िगरेशन प्रबंधक की जाँच करें ।

    SQL सर्वर कॉन्फ़िगरेशन प्रबंधक

  4. सत्यापित करें कि आपका SQL सर्वर कनेक्शन प्रमाणीकरण मोड आपके कनेक्शन स्ट्रिंग से मेल खाता है:

    • यदि आप उपयोगकर्ता नाम और पासवर्ड का उपयोग कर कनेक्ट कर रहे हैं, तो आपको "SQL सर्वर प्रमाणीकरण मोड" को स्वीकार करने के लिए SQL सर्वर को कॉन्फ़िगर करने की आवश्यकता है:

      -- YOU MUST RESTART YOUR SQL SERVER AFTER RUNNING THIS!
      USE [master]
      GO
      DECLARE @SqlServerAndWindowsAuthenticationMode INT = 2;
      EXEC xp_instance_regwrite
        N'HKEY_LOCAL_MACHINE',
        N'Software\Microsoft\MSSQLServer\MSSQLServer',
        N'LoginMode',
        REG_DWORD,
        @SqlServerAndWindowsAuthenticationMode;
      GO
    • यदि आप "एकीकृत सुरक्षा = सत्य" (विंडोज मोड) का उपयोग कर कनेक्ट कर रहे हैं, और यह त्रुटि केवल वेब अनुप्रयोगों में डीबगिंग के दौरान आती है, तो आपको SQL सर्वर लॉगिन के रूप में ApplicationPoolIdentity को जोड़ना होगा :
  5. अन्यथा, चलाएं Start -> Run -> Services.mscयदि ऐसा है, तो क्या यह चल रहा है?

अगर यह नहीं चल रहा है तो

ऐसा लगता है कि आपको सब कुछ स्थापित नहीं मिला। इंस्टॉल फ़ाइल लॉन्च करें और "नया इंस्टॉलेशन या मौजूदा इंस्टॉलेशन में सुविधाएं जोड़ें" विकल्प को चुना। वहां से आपको यह सुनिश्चित करने में सक्षम होना चाहिए कि डेटाबेस इंजन सेवा स्थापित हो गई है।


2
@ डीडो: स्टार्ट-> रन-> सर्विसेज.एमएससी
रवींद्र बागले

3
जाँच करने के लिए एक और चीज़ उदाहरण का नाम है। SQL सर्वर कैसे स्थापित किया गया था इसके आधार पर आपको होस्ट के बाद एक इंस्टेंस नाम प्रदान करने की आवश्यकता हो सकती है या नहीं।
अरवो बोवेन

पहली बार स्थापित होने के बाद "टीसीपी / आईपी और नामांकित पाइप सक्षम हैं" आवश्यक प्रतीत होता है
जेम्स ए मोहलर

3
यह बेवकूफी थी, लेकिन मेरे लिए, समस्या "लोकलहोस्ट" का उपयोग सर्वर नाम के रूप में कर रही थी, न कि "लोकलहोस्टल \ _सक्लेक्सप्रेशे०01" के रूप में स्थापना में सेट किया गया था
गाइ

1
मेरे मामले में SQLBrowser को अक्षम किया गया था और विन्यास उपकरण को sql टूल फ़ोल्डर में सूचीबद्ध नहीं किया गया था। Cmd https://docs.microsoft.com/en-us/sql/relational-dat डेटाबेस/sql-server-configuration-manager?view=sql-server-2017 के माध्यम से कॉन्फ़िगर करने के लिए SQLBrowser स्वचालित रूप से प्रारंभ करने के लिए उपकरण विफल रहता है /programming/21375014/i-cannot-start-sql-server-browser
steven87vt

123

गोटो स्टार्ट -> प्रोग्राम्स -> Microsoft SQL ServerYYYY -> कॉन्फ़िगरेशन टूल -> SQL सर्वर YYYY कॉन्फ़िगरेशन प्रबंधक या "SQLServerManager12.msc" चलाएं।

सुनिश्चित करें कि क्लाइंट प्रोटोकॉल के तहत टीसीपी / आईपी सक्षम है।

फिर "SQL सर्वर नेटवर्क कॉन्फ़िगरेशन" में जाएं और टीसीपी / आईपी पर डबल क्लिक करें। "आईपी पते" टैब पर क्लिक करें और नीचे स्क्रॉल करें। "आईपी ऑल" के तहत टीसीपी डायनेमिक पोर्ट को हटा दें यदि यह मौजूद है और टीसीपी पोर्ट को 1433 पर सेट करें। ओके पर क्लिक करें और फिर "एसक्यूएल सर्वर सर्विसेज" पर वापस जाएं और SQL सर्वर इंस्टेंस को पुनरारंभ करें। अब आप लोकलहोस्ट के माध्यम से जुड़ सकते हैं, कम से कम मैं कर सकता था।

यहां छवि विवरण दर्ज करें

ध्यान दें कि यह त्रुटि तब हो सकती है जब अन्य अनुप्रयोगों से भी कनेक्ट हो। एक सामान्य C # वेब एप्लिकेशन Web.configकनेक्शन स्ट्रिंग के लिए उदाहरण :

<connectionStrings>
    <add name="DefaultConnection" connectionString="server=localhost;database=myDb;uid=myUser;password=myPass;" />
</connectionStrings>

4
अंत में, यह मेरे लिए काम किया! मैंने IP1, IP2 में पोर्ट बदल दिया था ... लेकिन IPAll में नहीं। यह किया, धन्यवाद!
जॉर्ज

2
@George आप के रूप में बिल्कुल वैसा ही। मैंने फ़ायरवॉल को भी निष्क्रिय कर दिया था, और कुछ भी काम नहीं किया। टीसीपी डायनेमिक पोर्ट में 40xxx पोर्ट था । मैंने इसे हटा दिया, और IPAll के लिए टीसीपी पोर्ट में 1433 डाला, यह भी किया। धन्यवाद!
एलिसन

यह मेरे लिए भी महत्वपूर्ण था।
एरिक ओलसन

1
दीवार के खिलाफ मेरे सिर को पटकने के कई घंटों के बाद, यह आखिरकार काम कर गया। धन्यवाद।
शीर्ष बिल्ली

महान समाधान। यह मेरा दिन बचाता है। बहुत बहुत धन्यवाद!
लावंडे

13

SQL सर्वर एक्सप्रेस 2012 में आप का उपयोग करना चाहिए "(localdb) \ MSSQLLocalDB" उदाहरण के लिए डेटा स्रोत नाम के रूप में आप इस तरह कनेक्शन स्ट्रिंग का उपयोग कर सकते हैं

Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=master;Integrated Security=True;

10

मुझे एक समान समस्या थी - शायद मेरे समाधान से मदद मिलेगी। मैंने अभी MSSQL EX 2012 (डिफ़ॉल्ट इंस्टॉल) स्थापित किया और VS2012 EX से जुड़ने की कोशिश की। कोई आनंद नहीं है। मैंने तब सेवाओं को देखा, पुष्टि की कि SQL सर्वर (SQLEXPRESS) वास्तव में चल रहा था।

हालाँकि, मैंने SQL सर्वर ब्राउज़र नामक एक और दिलचस्प सेवा को अक्षम कर दिया था। मैंने इसे सक्षम किया, इसे निकाल दिया और फिर VS2012 EX में एक नए कनेक्शन में सर्वर नाम को पुनः प्राप्त करने और कनेक्ट करने में सक्षम था।

अजीब बात है कि वे वीएस को कनेक्ट करने के लिए आवश्यक सेवा को अक्षम कर देंगे।


इसे जोड़ने की आवश्यकता नहीं है; मेरे पास यह अक्षम है और मैं ठीक जुड़ सकता हूं। जब आप सटीक होस्ट / इंस्टेंस नाम को नहीं जानते तो यह आसान हो जाता है क्योंकि यह उन चीज़ों को अन्य सॉफ़्टवेयर द्वारा क्वेरी करने की अनुमति देता है।
साइमन मॉर्गन

8

सबसे पहले रवींद्र बागले द्वारा प्रदान किए गए सबसे लोकप्रिय समाधान का प्रयास करें ।

यदि स्थानीयहोस्ट से डेटाबेस तक आपका कनेक्शन अभी भी निम्न के समान त्रुटि के साथ विफल रहता है:

SQL सर्वर DB से कनेक्ट नहीं कर सकते। त्रुटि: मेजबान के लिए टीसीपी / आईपी कनेक्शन [आईपी पता], पोर्ट १४३३ विफल हो गया है। त्रुटि: "कनेक्शन ने इनकार कर दिया: कनेक्ट करें। कनेक्शन गुणों को सत्यापित करें। सुनिश्चित करें कि SQL सर्वर का एक उदाहरण होस्ट पर चल रहा है और पोर्ट पर टीसीपी / आईपी कनेक्शन स्वीकार कर रहा है। सुनिश्चित करें कि पोर्ट के लिए टीसीपी कनेक्शन एक आग से अवरुद्ध नहीं हैं। । "

  1. SQL सर्वर कॉन्फ़िगरेशन प्रबंधक खोलें।
  2. प्रश्न में सर्वर उदाहरण के लिए SQL सर्वर नेटवर्क कॉन्फ़िगरेशन का विस्तार करें।
  3. "TCP / IP" पर डबल-क्लिक करें।
  4. "प्रोटोकॉल" अनुभाग के तहत, "सक्षम" को "हां" पर सेट करें।
  5. "आईपी एड्रेस" अनुभाग के तहत, "आईपी ऑल" (जो डिफ़ॉल्ट रूप से 1433 है) के तहत टीसीपी पोर्ट सेट करें।
  6. "आईपी एड्रेस" सेक्शन के तहत, आईपी एड्रेस 127.0.0.1 (IPv4 के लिए) और :: 1 (IPv6 के लिए) के साथ सबस्क्राइब करें और दोनों "Enabled" और "Active" को "Yes" और TCP पोर्ट को 1433 पर सेट करें।

    टीसीपी / आईपी गुण

  7. Start > Control Panel > Administrative Tools > ServicesSQL सर्वर सेवा ( SQLEXPRESS) पर जाएँ और पुनः आरंभ करें ।


मैंने यहां पहुंचने से पहले अन्य समाधानों की कोशिश की। यह एक यह मेरे लिए तय! इसके अलावा, मुझे psping नामक एक चीज़ को डाउनलोड करने में मदद मिली जिससे मुझे कनेक्शन का परीक्षण करने में मदद मिली। उदाहरण: psping 127.0.0.1:1433
JMI मैडिसन

7

पहले जाँच करें SQL सर्वर सेवा चल रही है या बंद हो गई है, अगर इसे रोका जाता है तो बस इसे शुरू करें, ऐसा करने के लिए .. नीचे दिए गए चरणों का पालन करें।

1.स्टार्ट -> रन -> Services.msc

यहां छवि विवरण दर्ज करें

  1. सेवाओं के पैनल में मानक टैब पर जाएं फिर SQl सर्वर (SQL2014) खोजें

"SQL2014" मेरे द्वारा दिया गया है, यह आपके मामले में एक और नाम हो सकता है

यहां छवि विवरण दर्ज करें

एक बार जब आप SQL सेवा शुरू करते हैं, तो आप स्थानीय डेटाबेस को जोड़ने में सक्षम होते हैं।

आशा है कि यह किसी की मदद करेगा।


4

मेरी सभी सेवाएँ अपेक्षा के अनुसार चल रही थीं, और मैं अभी भी कनेक्ट नहीं कर सका।

मुझे अपने SQL सर्वर एक्सप्रेस प्रोटोकॉल के लिए SQL सर्वर कॉन्फ़िगरेशन प्रबंधक में TCP / IP गुण खंड को अद्यतन करना था , और सर्वर से कनेक्ट करने के लिए IPALL पोर्ट को 1433 पर सेट करना था ।

यहां छवि विवरण दर्ज करें


3

विंडोज़ प्रमाणीकरण से मिश्रित मोड में बदलने का प्रयास करें


1

यह अजीब है मुझे एक समान समस्या है। मैंने टूल्स के साथ SQL 2012 एक्सप्रेस के लिए पैकेज डाउनलोड किया था लेकिन डेटाबेस इंजन स्थापित नहीं था।

मैंने एमएस साइट से दूसरे को लोड किया और इस डेटाबेस डेटाबेस को स्थापित किया। रिबूट के बाद सेवाओं को सूचीबद्ध किया गया और जाने के लिए तैयार किया गया।


1

मेरी स्थिति

  • SQL सर्वर प्रबंधन स्टूडियो में खाली इंस्टेंस नाम> अपने डेटाबेस इंजन का चयन करें> राइट माउस बटन> गुण (सर्वर गुण)> लिंक देखें कनेक्शन गुण> उत्पाद> इंस्टेंस नाम रिक्त है

  • डेटा स्रोत =। \ SQLEXPRESS ने काम नहीं किया => web.config में लोकलहोस्ट का उपयोग करें (नीचे देखें)

समाधान : web.config में

xxxxxx = मेरे डेटाबेस का नाम बिना .mdf yyyyyy = मेरे डेटाबेस का नाम VS2012 डेटाबेस एक्सप्लोरर

आप साझा मेमोरी के बजाय टीसीपी के उपयोग को बाध्य कर सकते हैं, या तो tcp को उपसर्ग करके: कनेक्शन स्ट्रिंग में सर्वर नाम के लिए, या लोकलहोस्ट का उपयोग करके।

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring%28v=vs.110%29.aspx


1

मेरे पास एक ही मुद्दा था और मैंने पाया कि मेरे एसक्यूएल 2012 के लिए एक अद्यतन स्थापित करने के बाद ऐसा हुआ था। मेरे लिए यह तय था कि मैं कार्यक्रमों और सुविधाओं में जा रहा था और इस पर मरम्मत चला रहा था।


1

मेरे लिए समस्या यह थी कि मैं निर्दिष्ट नहीं कर रहा था .\। मैं केवल उदाहरण के नाम को निर्दिष्ट कर रहा था:

  • काम नहीं किया: SQL2016
  • काम किया: .\SQL2016


0

उपयोगकर्ता को बदलने की कोशिश करें जो स्थानीय प्रणाली की सेवा का मालिक है या अपने व्यवस्थापक खाते का उपयोग करें।

सेवाओं के तहत, मैंने NT सेवा \ Sql ... स्थानीय सिस्टम से सेवा SQL सर्वर (MSSQLSERVER) लॉग ऑन को बदल दिया है। सेवा पर राइट क्लिक करें और लॉग ऑन टैब पर जाएं और रेडियो बटन लोकल सिस्टम अकाउंट चुनें। आप किसी अन्य उपयोगकर्ता को भी इसे चलाने के लिए बाध्य कर सकते हैं, अगर वह बेहतर तरीके से फिट हो।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.