Solución:
vaya a la consola de mongoDB y elimine su usuario actual y configure la versión authSchema en 3 en lugar de 5, siga estos comandos en la consola de mongo –
mongo
use admin
db.system.users.remove({}) <== removing all users
db.system.version.remove({}) <== removing current version
db.system.version.insert({ "_id" : "authSchema", "currentVersion" : 3 })
Ahora reinicie el mongod y cree un nuevo usuario, entonces debería funcionar bien.
Nota: use los comandos de eliminación solo en la base de datos de prueba, si está en producción, use la actualización.
Información de autenticación para Kubernetes Helm Chart
Si elimina todos los usuarios y la autenticación está habilitada en la configuración (o --auth
param que se establece de forma predeterminada en el gráfico de timón de Kubernetes), ya no es posible acceder a MongoDB. Es necesario deshabilitar la autenticación, crear un nuevo usuario y luego volver a habilitarlo.
En Kubernetes, debe editar los parámetros y agregar --noauth
como argumento, ya que no es el predeterminado allí como en un MongoDB clásico instalado. Consulte la documentación de la CLI para obtener más información sobre --noauth
y el correspondiente --auth
.
Tuve el mismo problema. Lo que me estaba sucediendo fue que cuando utilicé MongoDB 3 para crear mi usuario, estaba usando SCRAM-SHA-1 como mecanismo de autenticación en lugar de MongoDB-CR. Lo que tenía que hacer era:
- Elemento de lista
- Elimina el usuario creado.
- Modifique la colección admin.system.version de modo que la versión actual de authSchema sea 3 en lugar de 5 (3 usa MongoDB-CR).
- Recrea tu usuario.
Debería funcionar sin problemas ahora.
El paso número 2 anterior no se detalla explícitamente, encontré esta solución y trabajé para mí.
var schema = db.system.version.findOne({"_id" : "authSchema"})
schema.currentVersion = 3
db.system.version.save(schema)