932 Stimmen

Wie kann ich eine MongoDB-Datenbank von der Kommandozeile aus löschen?

Was ist der einfachste Weg, dies von meiner Bash-Eingabeaufforderung zu tun?

29voto

David Punkte 629

Sie können auch einen "heredoc" verwenden:

mongo localhost/db <<EOF
db.dropDatabase()
EOF

Ergibt eine Ausgabe wie:

mongo localhost/db <<EOF
db.dropDatabase()
EOF
MongoDB shell version: 2.2.2
connecting to: localhost/db
{ "dropped" : "db", "ok" : 1 }    
bye

Ich verwende für solche Dinge gerne heredocs, falls Sie eine komplexere Befehlsfolge wünschen.

23voto

bhv Punkte 4750

Hier sind einige vollständige Löschvorgänge für Mongodb mit Mongo Shell

An bestimmtes Dokument löschen in Sammlungen: db.mycollection.remove( {name:"stack"} )

An alle Dokumente löschen in Sammlungen: db.mycollection.remove()

An Sammlung löschen : db.mycollection.drop()

à Datenbank löschen : Gehen Sie zunächst zu dieser Datenbank, indem Sie use mydb Befehl und dann

db.dropDatabase()

direkt von der Eingabeaufforderung oder blash aus: mongo mydb --eval "db.dropDatabase()

19voto

Gabriel Mancini Punkte 316

Andere Möglichkeit:

echo "db.dropDatabase()" | mongo <database name>

15voto

Anderson Lopes Punkte 639

Ausführen in einem Terminal:

mongo // To go to shell

show databases // To show all existing databases.

use <DATA_BASE> // To switch to the wanted database.

db.dropDatabase() // To remove the current database.

11voto

helcode Punkte 1600

Öffnen Sie ein weiteres Terminalfenster und führen Sie die folgenden Befehle aus,

mongodb
use mydb
db.dropDatabase()

Die Ausgabe dieses Vorgangs soll wie folgt aussehen

MAC:FOLDER USER$ mongodb
> show databases
local      0.78125GB
mydb       0.23012GB
test       0.23012GB
> use mydb
switched to db mydb
>db.dropDatabase()
{ "dropped" : "mydb", "ok" : 1 }
>

Bitte beachten Sie, dass mydb noch in Gebrauch ist, so dass das Einfügen einer Eingabe zu diesem Zeitpunkt die Datenbank erneut initialisiert.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X