2014-05-18 18 views
22

Kimlik doğrulama ile çoğaltma kümesini ayarlıyorum. this eğitimini kullandım. Anahtar kelime, yönetici kullanıcı ve diğer kullanıcıları kurdum. Her şey iyi çalışıyor - anonim erişim devre dışı bırakıldı ve ben yarattığım kullanıcıların kimlik bilgilerini kullanarakMongoDB 2.6.1 komut satırı kimlik doğrulaması başarısız oldu

oturum açabilirim.

Ama aynı kimlik bilgilerini kullanarak komut satırında

$ mongo -u 'USERNAME' -p 'PASSWORD' 
MongoDB shell version: 2.6.1 
connecting to: test 
2014-05-18T14:23:47.324+0200 Error: 18 { ok: 0.0, errmsg: "auth failed", code: 18 } at src/mongo/shell/db.js:1210 
exception: login failed 

den giriş yapamıyorum. Dokümantasyonda ya da SO'da yardımcı olan hiçbir şey bulamadım.

cevap

54

Örneğinizde gerçekleştirilen kabuk içi kimlik doğrulaması, admin veritabanına aykırıdır. Yukarıda belirtilen komut satırı bir veritabanı belirtmez ve bu nedenle testi olan varsayılan veritabanına karşı kimlik doğrulaması yapar. Sunucu, yerel ana bilgisayarda değil

mongo admin -u 'USERNAME' -p 'PASSWORD' 

eğer o zaman bunu kullanabilirsiniz: yönetici db karşı komut satırı üzerinden kimlik doğrulaması için onun yerine bu deneyin

şimdi çünkü bir güncelleme beri Belki farklı
mongo your_host_name:your_port/admin -u 'USERNAME' -p 'PASSWORD' 
+1

evet, teşekkürler, bu :-) –

+2

Bu soru çalışır ... anlamaya olmaz ve Mongo docs düzgün belirtilen DEĞİLDİR çünkü cevap birçok upvotes hak ediyor. –

+31

** Mongo dokümanlarında hiçbir şey doğru şekilde belirtilmemiştir. – Obscaenvs

0

Bu soru ilk olarak yanıtlandı, ancak kimlik doğrulama sadece kullanıcı adı/parola çift tırnak içinde sarıldığında başarılı olur. örneğin

mongo admin -u "myName" -p "myPassword"