MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie führe ich Mongo-Befehle von Bash aus?

Es gibt Unterschiede zwischen interaktivem und geskriptetem mongo Shell-Sitzungen . Insbesondere Befehle wie use admin sind kein gültiges JavaScript und funktionieren nur in einer interaktiven Shell-Sitzung.

Das funktionierende Äquivalent Ihrer Befehlszeile zum Herunterfahren wäre:

mongo 192.168.10.20:27000/admin --eval "db.shutdownServer()"

Sie können die zu verwendende Datenbank in die Verbindungszeichenfolge einschließen, und es besteht keine Notwendigkeit, einen Skript-mongo zu beenden Shell-Sitzung.

Wenn Sie Datenbanken von einer Skriptsitzung aus ändern müssen, gibt es einen db.getSiblingDB() JavaScript-Funktion. Eine alternative Möglichkeit, den obigen Shutdown-Befehl zu schreiben, wäre:

 mongo 192.168.10.20:27000 --eval "db=db.getSiblingDB('admin');db.shutdownServer()"