sql >> Database >  >> NoSQL >> MongoDB

kan geen standaard mongo-shellscript maken met authenticatie

Ik heb dit werk eindelijk gemaakt. Dit is hoe ik het uiteindelijk deed:

Eerst heb ik een bestand gemaakt met de naam test.js met het volgende erin:

db = connect("localhost:27017/admin");

db.auth('username','password');

db = db.getSiblingDB('test');

var cursor = db.cust.find();

while (cursor.hasNext()) {
   printjson(cursor.next());
}

Ik heb toen dit commando uitgevoerd vanaf de opdrachtregel:

mongo test.js

Ik wil ook andere ontwikkelaars die problemen hebben, wijzen op een paar dingen die ik heb geleerd toen ik dit probeerde te doen.

1) als je een nieuwe database toevoegt, en je draait mongo met authenticatie, moet je ofwel eerst inloggen op de authenticatiedatabase en dan overschakelen naar de gewenste database (zoals mijn voorbeeld laat zien) of je moet een gebruiker/wachtwoord toevoegen aan de gewenste database (zoals ik waarschijnlijk in de eerste plaats had moeten doen)

2) Wanneer u een javascript-bestand uitvoert via mongo, verwacht dan niet dezelfde "javascript"-functies te gebruiken die u gewend bent. Ik heb zojuist een harde les geleerd dat niet alle javascript hetzelfde is. u kunt bijvoorbeeld Console.log() niet gebruiken in een javascript-bestand dat via mongo wordt uitgevoerd, omdat console.log eigenlijk geen core-javascript is, maar eerder een functie die specifiek is voor browser- en node-implementaties.




  1. Mongoose geneste document update mislukt?

  2. Mongodb haalt de 3-byte teller uit een ObjectId

  3. MongoDB op Vagrant via Port Forwarding probleem

  4. F# Meerdere attributen CLIMutable DataContract