MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

L'authentification MongoDB-CR a échoué

allez sur la console mongoDB et supprimez votre utilisateur actuel et définissez la version authSchema sur 3 au lieu de 5, suivez ces commandes dans la console 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 })

Maintenant, redémarrez le mongod et créez un nouvel utilisateur, cela devrait fonctionner correctement.

Remarque :utilisez les commandes de suppression dans la base de données de test uniquement, si en production, utilisez la mise à jour.

Informations d'authentification pour Kubernetes Helm Chart

Si vous supprimez tous les utilisateurs et que l'authentification est activée dans la configuration (ou --auth param qui est défini par défaut sur le graphique helm de Kubernetes), il n'est plus possible d'accéder à MongoDB. Il est nécessaire de désactiver l'authentification, de créer un nouvel utilisateur, puis de le réactiver.

Sur Kubernetes, vous devez modifier les paramètres et ajouter --noauth comme argument, puisque ce n'est pas la valeur par défaut là comme sur une MongoDB installée classique. Veuillez consulter la documentation CLI pour plus d'informations sur --noauth et le --auth correspondant .