sql >> Database teknologi >  >> NoSQL >> MongoDB

Sådan droppes en database i MongoDB fra kommandolinjen

Ændring af en hel database i MongoDB er ret enkel og kan udføres på en række forskellige måder. Nedenfor vil vi kort undersøge to metoder til at slette (eller slette) en database i MongoDB ved at bruge både *nix shell såvel som Mongo shell-værktøjet.

Brug af Unix Shell og Eval-kommandoen

Den enkleste metode til at slette din Mongo-database er at udføre mongo shell-kommando fra kommandolinjen, sammen med de relevante flag og muligheder for at informere mongo skal du ønsker at droppe en database.

På det mest grundlæggende niveau, mongo shell-kommando kan bruges til hurtigt at oprette forbindelse til en bestemt database. I dette eksempel bruger vi det til at oprette forbindelse til bookstore database fra vores server bash prompt:

$ mongo bookstore
MongoDB shell version: 3.0.9
connecting to: bookstore
>

Men i stedet for blot at oprette forbindelse til vores bookstore database og kørende kommandoer fra mongo shell, kan vi faktisk bestå eval flag efterfulgt af den JavaScript-kode, vi ønsker, at MongoDB skal udføre, og vores database kan nemt slippes på én linje.

I dette tilfælde ønsker vi at droppe databasen, så vi bruger db.dropDatabase() metode til at slette den database, vi er forbundet til. Selvom det ikke er nødvendigt, pakker vi også denne metode ind i printjson funktion, for at sikre, at outputtet af denne kommando giver mening og kan læses.

$ mongo bookstore --eval "printjson(db.dropDatabase())"
MongoDB shell version: 3.0.9
connecting to: bookstore
{ "dropped" : "bookstore", "ok" : 1 }

Brug af Mongo Shell Utility

Den alternative metode begynder med at oprette forbindelse til MongoDB gennem mongo shell-værktøj, og udsend derefter kommandoer i selve Mongo for at oprette forbindelse til og slippe den specifikke database.

Selvom ingen af ​​metoderne er særlig fordelagtige i forhold til den anden, er det i et produktionsmiljø nok bedst at undgå at bruge ovenstående eval og brug i stedet mongo shell, som vi vil udforske nedenfor, hvilket giver dig mulighed for at sikre du er forbundet til (og dermed sletter) den korrekte database.

Som før, start med at udstede mongo kommando fra din bash-shell:

$ mongo
MongoDB shell version: 3.0.9
connecting to: test
>

Nu hvor du er forbundet til Mongo, skal du bruge show dbs kommando for at vise alle databaser i systemet:

> show dbs
local  0.078GB
bookstore 0.521GB

Tilslut nu til den specifikke database, som du ønsker at droppe med use <database> kommando. I vores tilfælde vil vi igen oprette forbindelse til bookstore :

> use bookstore
switched to db bookstore

Udfør endelig sletningen ved at kalde db.dropDatabase() metode, der ligner vores eval 'ed udtalelse ovenfor.

> db.dropDatabase()
{ "dropped" : "bookstore", "ok" : 1 }

Der har du det! To simple metoder til hurtigt og nemt at droppe en specifik database fra MongoDB.


  1. $strLenBytes vs $strLenCP i MongoDB:Hvad er forskellen?

  2. MongoDB:hvordan parser man dato i 3.6 mongoDb-version?

  3. Mongoose returnerer udefineret for et eksisterende felt

  4. Python Reddis Queue ValueError:Funktioner fra __main__-modulet kan ikke behandles af arbejdere