Das Problem ist, dass der Datenbankbenutzer auf admin
erstellt wird database anstelle von dbname
.
Weglassen des /dbname
aus der Verbindungszeichenfolge / Mongo-Shell / usw. bedeutet, dass die Verbindungszeichenfolge beim admin
authentifiziert wird Datenbank. Zitieren der Dokumente:
(https://docs.mongodb.com/manual/reference/connection -Zeichenfolge/#Komponenten ).
Wenn /dbname
definiert ist, authentifiziert sich die Verbindungszeichenfolge gegenüber dbname
es sei denn, die authSource
Der Parameter wird konfiguriert, um die Datenbank anzugeben, in der sich der Benutzer befindet.
Sie können dies bestätigen, indem Sie entweder authSource=admin
hinzufügen an die Verbindungszeichenfolge oder --authenticationDatabase admin
zum Mongo-Shell-Befehl
.
Alternativ können Sie db.getUsers()
verwenden um die Datenbank zu sehen, in der ein Benutzer erstellt wurde.