Modificar una base de datos completa en MongoDB es bastante simple y se puede realizar de varias maneras. A continuación, examinaremos brevemente dos métodos para descartar (o eliminar) una base de datos en MongoDB, utilizando tanto el *nix
shell, así como la utilidad de shell de Mongo.
Uso de Unix Shell y Eval Command
El método más simple para eliminar su base de datos Mongo es ejecutar mongo
comando de shell desde la línea de comando, junto con las banderas y opciones apropiadas para informar al mongo
shell que desea eliminar una base de datos.
En el nivel más básico, el mongo
El comando shell se puede usar para conectarse rápidamente a una base de datos específica. En este ejemplo, lo usaremos para conectarnos a la bookstore
base de datos de nuestro indicador bash del servidor:
$ mongo bookstore
MongoDB shell version: 3.0.9
connecting to: bookstore
>
Sin embargo, en lugar de simplemente conectarse a nuestra bookstore
base de datos y ejecutar comandos desde el mongo
shell, en realidad podemos pasar el eval
seguido del código JavaScript que deseamos que MongoDB ejecute, y nuestra base de datos se puede colocar fácilmente en una línea.
En este caso, queremos eliminar la base de datos, por lo que usaremos db.dropDatabase()
método para eliminar la base de datos a la que estamos conectados. Si bien no es necesario, también incluiremos este método en printjson
para garantizar que la salida de este comando tenga sentido y sea legible.
$ mongo bookstore --eval "printjson(db.dropDatabase())"
MongoDB shell version: 3.0.9
connecting to: bookstore
{ "dropped" : "bookstore", "ok" : 1 }
Uso de la utilidad Mongo Shell
El método alternativo comienza conectándose a MongoDB a través de mongo
shell, luego emita comandos dentro de Mongo para conectarse y eliminar la base de datos específica.
Si bien ningún método es particularmente ventajoso sobre el otro, en un entorno de producción, probablemente sea mejor evitar usar el eval
anterior. opción y en su lugar utilice el mongo
shell como exploraremos a continuación, lo que le permite garantizar está conectado a (y por lo tanto eliminando) la base de datos adecuada.
Como antes, comience emitiendo el mongo
comando desde su shell bash:
$ mongo
MongoDB shell version: 3.0.9
connecting to: test
>
Ahora que está conectado a Mongo, use el show dbs
comando para mostrar todas las bases de datos en el sistema:
> show dbs
local 0.078GB
bookstore 0.521GB
Ahora conéctese a la base de datos específica que desea eliminar con use <database>
dominio. En nuestro caso, volveremos a conectarnos a bookstore
:
> use bookstore
switched to db bookstore
Finalmente, ejecute la eliminación llamando a db.dropDatabase()
método, similar a nuestro eval
'ed declaración anterior.
> db.dropDatabase()
{ "dropped" : "bookstore", "ok" : 1 }
¡Ahí tienes! Dos métodos simples para eliminar una base de datos específica de MongoDB rápida y fácilmente.