2016-08-03 7 views
15

गोलांग से मेरा मोंगोडीबी कनेक्शन डायल है। लेकिन यह एक आतंक लौट रहा है "सर्वर ने एसएएसएल प्रमाणीकरण चरण पर त्रुटि लौटा दी: प्रमाणीकरण विफल।"। मेरा उपयोगकर्ता नाम, पासवर्ड, होस्ट एडर्स और डीबीनाम सही हैं। मुझे यहां क्या समझ नहीं आ रहा है?सर्वर ने एसएएसएल प्रमाणीकरण चरण पर त्रुटि लौटा दी: प्रमाणीकरण विफल रहा

dbName: = os.Getenv("ENV_DBNAME") 
userName: = os.Getenv("ENV_DBUSER") 
password: = os.Getenv("ENV_DBPASS") 
dbHost: = os.Getenv("ENV_DBHOST") 
mongoDialInfo: = & mgo.DialInfo { 
Addrs: [] string { 
    dbHost 
}, 
Database: dbName, 
Username: userName, 
Password: password, 
Timeout: 60 * time.Second, 
} 
sess, err: = mgo.DialWithInfo(mongoDialInfo) 
if (err != nil) { 
panic(err) 

} 
+0

आप के रूप में [सही इस जवाब] का चयन कर सकते हैं (https://stackoverflow.com/a/43749668/295716) @anantha की, SASL प्रमाणीकरण कदम पर tHX – Antoine

उत्तर

35

मैं इसी तरह की त्रुटि का सामना करना पड़ा और --authenticationDatabase पैरामीटर जोड़ा और यह काम किया जब तक हम एक दूरस्थ MongoDB

उपयोग अपने कोड में प्रारूप नीचे समान से कनेक्ट कर रहा :

$mongorestore --host databasehost:98761 --username restoreuser 
--password restorepwd --authenticationDatabase admin --db targetdb ./path/to/dump/ 
+0

धन्यवाद, मेरे मामले में यह वास्तव में समाधान था। – Rav

+1

मैं उलझन में हूं ... - प्रमाणीकरण डाटाबेस पैरामीटर क्या है? उस डेटाबेस का नाम जिसे आप एक्सेस करना चाहते हैं? – vabm

+0

मेरे मामले में मुझे सर्वर पर केवल एक डीबी तक पहुंच थी। तो मुझे बस '-d ' विकल्प जोड़ने की आवश्यकता थी। मेरे लिए '- प्रमाणीकरण डाटाबेस 'की कोई आवश्यकता नहीं – alaster

3

mgo रिटर्न इस त्रुटि अगर username, password या database गलत हैं। दो बार अपने क्रेडेंशियल्स की जांच करें। Authentication failed त्रुटि संदेश देख सकते हैं जब कोई अन्य स्थितियां नहीं हैं।

+0

सर्वर से त्रुटि आई: प्रमाणीकरण विफल रहा। दहशत: रनटाइम त्रुटि: अमान्य स्मृति पता या शून्य सूचक dereference \t दहशत: रनटाइम त्रुटि: अवैध स्मृति पता या शून्य सूचक dereference –

+0

ये त्रुटि संदेश –

+0

क्या यह कनेक्शन लागू करने का सही तरीका है? –

1

त्रुटि की रिपोर्ट प्रमाणीकरण के कारण असफल हो सकता शून्य सूचक के कारण होता है लगता है, तो आप उन्हें का उपयोग कर कनेक्शन "लॉग साथ mongoexport आदेश में

+1

मुझे नहीं पता कि अप-मतदाता आपको कैसे समझता है, लेकिन मुझे यकीन है कि मुझे आपके उत्तर से कुछ भी नहीं समझा। मन और विस्तार से ...? – rrw

+0

अच्छी तरह से 1 साल से अधिक के बाद मुझे नहीं पता कि मैं क्या सोच रहा था। शायद मेरा विचार था कि गोलांग एप्लिकेशन मेजबान से एक या अधिक env_variable पीछे नहीं हट सकता है। – Bestbug

5

अक्सर हम पैरामीटर के साथ भ्रमित बनाने के लिए पहले डेटा की जाँच करनी चाहिए -इन में "उपयोगकर्ता। आदेश "डेटाबेस उपयोगकर्ता नाम" की अपेक्षा करता है लॉग-इन उपयोगकर्ता नाम नहीं। गलत उपयोगकर्ता नाम इनपुट करने की संभावना है। "डाटाबेस प्रयोक्ता नाम" एक डेटाबेस के लिए "उपयोगकर्ता" टैब में पाया जा सकता

+0

मेरे मामले में, मैं डीबी पासवर्ड के बजाय अपने एमएलएबी पासवर्ड का उपयोग कर रहा था। मूर्खतापूर्ण गलती लेकिन इस जवाब ने मुझे इसे समझने में मदद की! – ahaurat

संबंधित मुद्दे