यदि सर्वर में कोई त्रुटि आती है जो लॉगिन को सफल होने से रोकती है, तो क्लाइंट निम्न त्रुटि संदेश प्रदर्शित करेगा।
Msg 18456, Level 14, State 1, Server <server name>, Line 1
Login failed for user '<user name>'
- इसका आमतौर पर मतलब है कि आपका कनेक्शन अनुरोध आपके द्वारा निर्दिष्ट सर्वर नाम से सफलतापूर्वक प्राप्त हुआ था लेकिन सर्वर आपको कई कारणों से पहुंच प्रदान करने में सक्षम नहीं है और त्रुटि फेंकता है:18456।
- यह इवेंट आईडी कभी-कभी राज्य 1 भी प्रदान करता है जो वास्तव में उपयोगी नहीं है क्योंकि सुरक्षा कारणों से किसी भी त्रुटि को स्थिति 1 में बदल दिया जाता है जब तक कि आप सर्वर पर लॉगिंग की जांच नहीं कर सकते।
- Microsoft बहुत उपयोगी संदेश बॉक्स प्रदान नहीं करता है, इसलिए नीचे कुछ स्पष्टीकरण दिए गए हैं कि आपको त्रुटि क्यों मिलती है।
अमान्य उपयोगकर्ता आईडी: आप जिस सर्वर को प्राप्त करने का प्रयास कर रहे हैं उस पर SQL सर्वर निर्दिष्ट UserID को खोजने में सक्षम नहीं है। सबसे आम कारण यह है कि इस यूजर आईडी को सर्वर पर एक्सेस नहीं दिया गया है, लेकिन यह एक साधारण टाइपो भी हो सकता है या आप गलती से अलग सर्वर से कनेक्ट करने का प्रयास कर रहे हैं (यदि आप एक से अधिक सर्वर का उपयोग करते हैं तो विशिष्ट)
अमान्य पासवर्ड: गलत पासवर्ड या सिर्फ एक टाइपो। याद रखें कि इस उपयोगकर्ता नाम के अलग-अलग सर्वर पर अलग-अलग पासवर्ड हो सकते हैं।
कम सामान्य त्रुटियां: उपयोगकर्ता आईडी सर्वर पर अक्षम हो सकता है। SQL प्रमाणीकरण के लिए Windows लॉगिन प्रदान किया गया था (Windows प्रमाणीकरण में परिवर्तन। यदि आप SSMS का उपयोग करते हैं तो आपको इस विकल्प का उपयोग करने के लिए भिन्न उपयोगकर्ता के रूप में चलाना पड़ सकता है)। पासवर्ड की समय सीमा समाप्त हो सकती है और शायद कई अन्य कारण….
18456 राज्य 1 स्पष्टीकरण: आमतौर पर Microsoft SQL सर्वर आपको त्रुटि स्थिति 1 देगा जिसका वास्तव में कोई मतलब नहीं है इसके अलावा आपके पास 18456 त्रुटि है। राज्य 1 का उपयोग सिस्टम की सुरक्षा के लिए वास्तविक स्थिति को छिपाने के लिए किया जाता है, जो मेरे लिए समझ में आता है। नीचे सभी अलग-अलग राज्यों के साथ एक सूची है और सटीक स्थिति प्राप्त करने के बारे में अधिक जानकारी के लिए SQL सर्वर 2005 में "लॉगिन विफल" (त्रुटि 18456) त्रुटि संदेशों को समझना
पर जाएं।SQL प्रमाणीकरण सक्षम नहीं: यदि आप SQL सर्वर इंस्टेंस पर पहली बार SQL लॉगिन का उपयोग करते हैं, तो अक्सर त्रुटि 18456 होती है क्योंकि Windows प्रमाणीकरण (केवल) सर्वर गुणों (सुरक्षा अनुभाग) में सेट होता है।
सर्वर गुणों तक पहुँचने के लिए, - SQL सर्वर प्रबंधन स्टूडियो खोलें, ऑब्जेक्ट एक्सप्लोरर फलक पर जाएँ (यदि आप इसे नहीं देख सकते हैं तो दृश्य का उपयोग करें)।- अपने सर्वर के लिए डेटाबेस इंजन से कनेक्ट करने के लिए कनेक्ट बटन का उपयोग करें। एक बार कनेक्ट होने के बाद आप इसे ऑब्जेक्ट एक्सप्लोरर में देखेंगे। सर्वर पर राइट क्लिक करें और प्रॉपर्टीज पर क्लिक करें। सर्वर गुण विंडो दिखाई देगी।
नीचे स्क्रीनशॉट देखें जिसके कारण SQL लॉगिन विफल हो सकता है
आपको सर्वर प्रमाणीकरण को SQL सर्वर Windows प्रमाणीकरण पर सेट करना चाहिए
इस त्रुटि को हल करने के लिए कंप्यूटर पर SQL Server 2005 के साथ नीचे दिए गए चरणों का पालन करें।
- ऑपरेटिंग सिस्टम में SQL Server 2008 के समान उपयोगकर्ता नाम और पासवर्ड के साथ व्यवस्थापक विशेषाधिकार के साथ नया उपयोगकर्ता बनाएं।
- एसक्यूएल सर्वर डेटाबेस पर डेटाबेस नोड>> सुरक्षा>> लॉगिन>> का विस्तार करके नया उपयोगकर्ता बनाएं - नया उपयोगकर्ता बनाएं और इस नए उपयोगकर्ता को विंडोज प्रमाणीकरण रेडियो बटन के साथ जोड़ें। - इस उपयोगकर्ता को केवल चयनित Windows प्रमाणीकरण द्वारा ही जोड़ा जा सकता है, यह ऑपरेटिंग सिस्टम का उपयोगकर्ता लॉगिन है।
- एक बार उपरोक्त दो चरणों को पूरा करने के बाद जब SQL Server 2008 से SQL Server 2005 से Windows प्रमाणीकरण का उपयोग करके कनेक्ट किया जाता है तो यह सफलतापूर्वक कनेक्ट हो जाएगा।
कैसे ठीक करना है? यह लिंक वीडियो देखें SQL सर्वर और Windows प्रमाणीकरण मोड पृष्ठ।