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

So löschen Sie eine Datenbank in MongoDB über die Befehlszeile

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.