MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Błąd uwierzytelniania podczas próby zapisania w mongodb

Gdzie tj. w jakiej bazie utworzyłeś użytkownika? Zazwyczaj użytkownicy są tworzeni w bazie danych admin . Kiedy łączysz się z MongoDB, powinieneś zawsze określić bazę danych uwierzytelniania i bazę danych, której chcesz używać.

Wartości domyślne są nieco mylące i niezbyt spójne, zobacz tę tabelę, aby uzyskać przegląd:

+----------------------------------------------------------------------------------------+
|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   |
+----------------------------------------------------------------------------------------+

Jeśli chcesz używać parametrów połączenia w formacie URI, odpowiadałyby one następującym:

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

Chyba utworzyłeś użytkownika w admin bazy danych, ale ponieważ nie określisz authenticationDatabase podczas łączenia, Mongo domyślnie ustawia ją na mydatabase gdzie to się nie powiedzie, ponieważ użytkownik nie istnieje w bazie danych mydatabase .




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jak przekonwertować z ciągu na typ danych?

  2. Usuń osadzony dokument z zagnieżdżonej tablicy dokumentów

  3. Czy są jakieś powody, dla których powinienem/nie powinienem używać ObjectId w moim adresie URL RESTful

  4. Uzyskać wszystkie nazwy pól w kolekcji mongodb?

  5. Paginacja z MongoDB