sql >> Database >  >> NoSQL >> MongoDB

Mongodb kan gebruiker [email protected] niet vinden

Het probleem is dat de databasegebruiker wordt aangemaakt op de admin database in plaats van dbname .

Het weglaten van de /dbname van de verbindingsreeks / mongo shell / etc. betekent dat de verbindingsreeks wordt geverifieerd bij de admin databank. De documenten citeren:

(https://docs.mongodb.com/manual/reference/connection -string/#componenten ).

Als /dbname is gedefinieerd, wordt de verbindingsreeks geverifieerd tegen dbname tenzij de authSource parameter is geconfigureerd om de database op te geven waarin de gebruiker zich bevindt.

U kunt bevestigen dat dit het geval is door authSource=admin . toe te voegen naar de verbindingsreeks of --authenticationDatabase admin naar het mongo shell-commando .

Als alternatief kunt u db.getUsers() . gebruiken om de database te zien waarin een gebruiker is aangemaakt.




  1. Spring data mongodb-query converteert String automatisch naar ObjectId

  2. Vind max element in een array

  3. Waarom staat er een onderstrepingsteken voor de MongoDb-document-ID?

  4. MongoDB E11000 dubbele sleutelfout