sql >> Database >  >> NoSQL >> MongoDB

Verificatiefout tijdens het opslaan naar mongodb

Waar, d.w.z. in welke database heb je de gebruiker aangemaakt? Meestal worden gebruikers aangemaakt in de database admin . Wanneer u verbinding maakt met een MongoDB, moet u altijd de authenticatiedatabase specificeren en de database die u wilt gebruiken.

De standaardinstellingen zijn een beetje verwarrend en niet echt consistent, zie deze tabel voor een overzicht:

+----------------------------------------------------------------------------------------+
|Connection string                                           | Authentication | Current  |
|                                                            | database       | database |
+----------------------------------------------------------------------------------------+
|mongo -u <...> -p <...> --authenticationDatabase admin myDB |     admin      |   myDB   |
|mongo -u <...> -p <...> myDB                                |     myDB       |   myDB   |
|mongo -u <...> -p <...> --authenticationDatabase admin      |     admin      |   test   |
|mongo -u <...> -p <...> localhost:27017                     |     test       |   test   |
|mongo -u <...> -p <...> --host localhost:27017              |     admin      |   test   |
|mongo -u <...> -p <...>                                     |     admin      |   test   |
+----------------------------------------------------------------------------------------+

Als u de verbindingsreeks in URI-indeling wilt gebruiken, komt deze overeen met deze:

mongodb://<username>:<password>@hostname/myDB?authSource=admin
mongodb://<username>:<password>@hostname/myDB
mongodb://<username>:<password>@hostname?authSource=admin
mongodb://<username>:<password>@hostname

Ik neem aan dat je de gebruiker hebt aangemaakt in admin database, maar aangezien u authenticatieDatabase niet specificeert tijdens het verbinden, zet Mongo het standaard op mydatabase waar het mislukt, omdat de gebruiker niet bestaat in de database mydatabase .




  1. MongoDB .Net driver 2.0 Pull (element verwijderen)

  2. Tips voor het upgraden naar de nieuwste MongoDB-versie

  3. MongoDB Schema Design - Veel kleine documenten of minder grote documenten?

  4. Totale grootte van documenten in overeenkomende pijplijn overschrijdt de maximale documentgrootte