Промяната на цяла база данни в MongoDB е доста проста и може да се извърши по различни начини. По-долу ще разгледаме накратко два метода за премахване (или изтриване) на база данни в MongoDB, като използваме и двата *nix
shell, както и помощната програма за обвивка Mongo.
Използване на Unix Shell и команда Eval
Най-простият метод за изтриване на вашата база данни Mongo е да изпълните mongo
shell команда от командния ред, заедно със съответните флагове и опции за информиране на mongo
shell, който искате да пуснете база данни.
На най-основното ниво, mongo
командата shell може да се използва за бързо свързване към конкретна база данни. В този пример ще го използваме за свързване с bookstore
база данни от нашия сървър bash подкана:
$ mongo bookstore
MongoDB shell version: 3.0.9
connecting to: bookstore
>
Въпреки това, вместо просто да се свържете с нашата bookstore
база данни и изпълнявани команди от mongo
shell, всъщност можем да предадем eval
флаг, последван от JavaScript кода, който желаем MongoDB да изпълни, и нашата база данни може лесно да бъде изпусната на един ред.
В този случай искаме да премахнем базата данни, така че след това ще използваме db.dropDatabase()
метод за изтриване на базата данни, към която сме свързани. Въпреки че не е необходимо, ние също ще обвием този метод в printjson
функция, за да се гарантира, че изходът на тази команда има смисъл и четим.
$ mongo bookstore --eval "printjson(db.dropDatabase())"
MongoDB shell version: 3.0.9
connecting to: bookstore
{ "dropped" : "bookstore", "ok" : 1 }
Използване на помощната програма Mongo Shell
Алтернативният метод започва със свързване с MongoDB чрез mongo
shell помощна програма, след което издайте команди в рамките на самия Mongo, за да се свържете и пуснете конкретната база данни.
Въпреки че нито един метод не е особено изгоден пред другия, в производствена среда вероятно е най-добре да избягвате използването на горния eval
опция и вместо това използвайте mongo
shell, както ще разгледаме по-долу, което ви позволява да подсигурите сте свързани с (и по този начин изтривате) правилната база данни.
Както и преди, започнете с издаване на mongo
команда от вашата bash обвивка:
$ mongo
MongoDB shell version: 3.0.9
connecting to: test
>
Сега, когато сте свързани с Mongo, използвайте show dbs
команда за показване на всички бази данни в системата:
> show dbs
local 0.078GB
bookstore 0.521GB
Сега се свържете с конкретната база данни, която искате да премахнете с use <database>
команда. В нашия случай отново ще се свържем с bookstore
:
> use bookstore
switched to db bookstore
Накрая изпълнете изтриването, като извикате db.dropDatabase()
метод, подобен на нашия eval
'ed изявление по-горе.
> db.dropDatabase()
{ "dropped" : "bookstore", "ok" : 1 }
Ето го! Два прости метода за бързо и лесно премахване на конкретна база данни от MongoDB.