sql >> Database >  >> NoSQL >> MongoDB

maak verbinding met een mongodb-instantie zonder --authenticationDatabase admin

Dit komt omdat de gebruikersreferenties worden opgeslagen in de beheerdersdatabase en niet in de standaarddatabase waar de mongo-shell verbinding mee maakt (test).

U kunt dit wijzigen met de verbindings-URL:

Met de admin databank:

$ mongo localhost/admin --username user -p
MongoDB shell version: 2.6.9
Enter password:
connecting to: localhost/admin
replset:PRIMARY>

Zonder een specifieke database (test standaard):

$ mongo localhost --username user -p
MongoDB shell version: 2.6.9
Enter password:
connecting to: localhost
2015-04-22T15:34:28.743+0100 Error: 18 { ok: 0.0, errmsg: "auth failed", code: 18 } at src/mongo/shell/db.js:1260
exception: login failed

Met --authenticationDatabase :

$ mongo localhost --username user --authenticationDatabase admin -p
MongoDB shell version: 2.6.9
Enter password:
connecting to: localhost
replset:PRIMARY>

Merk op dat het gebruik van --host neemt niet aan dat de databasenaam de naam is na de / (schuine streep:

$ mongo --host localhost/admin --username user -p
MongoDB shell version: 2.6.9
Enter password:
connecting to: localhost/admin:27017/test
2015-04-22T15:37:40.703+0100 starting new replica set monitor for replica set localhost with seeds admin:27017
2015-04-22T15:37:40.703+0100 [ReplicaSetMonitorWatcher] starting
2015-04-22T15:37:40.920+0100 getaddrinfo("admin") failed: nodename nor servname provided, or not known
2015-04-22T15:37:40.922+0100 warning: No primary detected for set localhost
2015-04-22T15:37:40.922+0100 All nodes for set localhost are down. This has happened for 1 checks in a row. Polling will stop after 29 more failed checks
2015-04-22T15:37:40.923+0100 Error: connect failed to replica set localhost/admin:27017 at src/mongo/shell/mongo.js:148
exception: connect failed


  1. MongoDB aggregatieraamwerk $aftrekken

  2. Hoe werkt Mongoose's save callback?

  3. Hoe gegevens in Model op te maken voordat u ze opslaat in Mongoose (ExpressJS)

  4. Waarom kan ik de MongoDB-update niet uitleggen?