remota - mongodb foreach update
La autenticación de la línea de comandos de MongoDB 2.6.1 falla (2)
Configuré el conjunto de réplicas con autenticación. Usé this tutorial Configuré el archivo de claves, el usuario administrador y otros usuarios. Todo funciona bien: el acceso anónimo está desactivado y puedo iniciar sesión
$ mongo
MongoDB shell version: 2.6.1
connecting to: test
Error while trying to show server startup warnings: not authorized on admin to execute command { getLog: "startupWarnings" }
rs0:PRIMARY> use admin
switched to db admin
rs0:PRIMARY> db.auth("USERNAME","PASSWORD")
1
rs0:PRIMARY>
usando las credenciales de los usuarios que creé.
Pero no puedo iniciar sesión desde la línea de comando
$ 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
usando las mismas credenciales. No encontré nada útil en la documentación o aquí en SO.
La autenticación incorporada en su ejemplo está en contra de la base de datos de administración . La línea de comando publicada anteriormente no especifica una base de datos y, por lo tanto, se está autenticando frente a la base de datos predeterminada que es la prueba . Intente esto en su lugar para autenticarse a través de la línea de comando contra el administrador db:
mongo admin -u ''USERNAME'' -p ''PASSWORD''
si el servidor no está en el host local, puede usar esto:
mongo your_host_name:your_port/admin -u ''USERNAME'' -p ''PASSWORD''
Quizás sea diferente ahora debido a una actualización ya que esta pregunta fue respondida originalmente, pero la autenticación solo tiene éxito cuando se envuelve el nombre de usuario / contraseña entre comillas dobles. p.ej,
mongo admin -u "myName" -p "myPassword"