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

Mongodb n'a pas pu trouver l'utilisateur [email protected]

Le problème est que l'utilisateur de la base de données est créé sur admin base de données au lieu de dbname .

Omettre le /dbname à partir de la chaîne de connexion / mongo shell / etc. signifie que la chaîne de connexion s'authentifiera auprès de l'admin base de données. Citant les docs :

(https://docs.mongodb.com/manual/reference/connection -chaîne/#composants ).

Si /dbname est défini, la chaîne de connexion s'authentifiera auprès de dbname sauf si authSource Le paramètre est configuré pour spécifier la base de données dans laquelle réside l'utilisateur.

Vous pouvez confirmer que c'est le cas en ajoutant authSource=admin à la chaîne de connexion ou --authenticationDatabase admin à la commande mongo shell .

Alternativement, vous pouvez utiliser db.getUsers() pour voir la base de données dans laquelle un utilisateur a été créé.