Das Ändern einer gesamten Datenbank in MongoDB ist recht einfach und kann auf verschiedene Arten durchgeführt werden. Im Folgenden untersuchen wir kurz zwei Methoden zum Ablegen (oder Löschen) einer Datenbank in MongoDB, wobei sowohl der *nix
Shell sowie das Mongo-Shell-Dienstprogramm.
Using the Unix Shell and Eval Command
Die einfachste Methode zum Löschen Ihrer Mongo-Datenbank ist die Ausführung von mongo
Shell-Befehl von der Befehlszeile, zusammen mit den entsprechenden Flags und Optionen, um den mongo
zu informieren Shell Sie eine Datenbank löschen möchten.
Auf der einfachsten Ebene, dem mongo
Shell-Befehl kann verwendet werden, um schnell eine Verbindung zu einer bestimmten Datenbank herzustellen. In diesem Beispiel verwenden wir es, um eine Verbindung zum bookstore
herzustellen Datenbank von unserer Server-Bash-Eingabeaufforderung:
$ mongo bookstore
MongoDB shell version: 3.0.9
connecting to: bookstore
>
Anstatt sich jedoch einfach mit unserem bookstore
zu verbinden Datenbank und Ausführen von Befehlen aus dem mongo
Shell können wir tatsächlich den eval
übergeben Flag gefolgt von dem JavaScript-Code, den MongoDB ausführen soll, und unsere Datenbank kann einfach in einer Zeile abgelegt werden.
In diesem Fall möchten wir die Datenbank löschen, also verwenden wir dann db.dropDatabase()
Methode zum Löschen der Datenbank, mit der wir verbunden sind. Obwohl es nicht notwendig ist, packen wir diese Methode auch in printjson
Funktion, um sicherzustellen, dass die Ausgabe dieses Befehls sinnvoll und lesbar ist.
$ mongo bookstore --eval "printjson(db.dropDatabase())"
MongoDB shell version: 3.0.9
connecting to: bookstore
{ "dropped" : "bookstore", "ok" : 1 }
Verwenden des Mongo-Shell-Dienstprogramms
Die alternative Methode beginnt mit der Verbindung zu MongoDB über mongo
Shell-Dienstprogramm, und geben Sie dann Befehle in Mongo selbst aus, um eine Verbindung zu der jeweiligen Datenbank herzustellen und diese zu löschen.
Obwohl keine Methode gegenüber der anderen besonders vorteilhaft ist, ist es in einer Produktionsumgebung wahrscheinlich am besten, die Verwendung des obigen eval
zu vermeiden Option und verwenden Sie stattdessen mongo
Shell, wie wir weiter unten untersuchen werden, wodurch Sie sicherstellen können Sie sind mit der richtigen Datenbank verbunden (und löschen diese daher).
Beginnen Sie wie zuvor mit der Ausgabe des mongo
Befehl von Ihrer Bash-Shell:
$ mongo
MongoDB shell version: 3.0.9
connecting to: test
>
Nachdem Sie nun mit Mongo verbunden sind, verwenden Sie show dbs
Befehl zum Anzeigen aller Datenbanken im System:
> show dbs
local 0.078GB
bookstore 0.521GB
Verbinden Sie sich nun mit der spezifischen Datenbank, die Sie löschen möchten, mit use <database>
Befehl. In unserem Fall stellen wir erneut eine Verbindung zu bookstore
her :
> use bookstore
switched to db bookstore
Führen Sie abschließend die Löschung durch Aufruf von db.dropDatabase()
durch Methode, ähnlich unserem eval
'ed-Anweisung oben.
> db.dropDatabase()
{ "dropped" : "bookstore", "ok" : 1 }
Hier hast du es! Zwei einfache Methoden zum schnellen und einfachen Löschen einer bestimmten Datenbank aus MongoDB.