Saltar al contenido
Cosas Tecnológicas

¿Cómo eliminar la base de datos MongoDB?

MongoDB es la base de datos NoSQL más popular entre empresas y startups. El hecho de que sea altamente escalable la hace muy adecuada para las aplicaciones web actuales que necesitan expandirse a medida que aumenta la base de usuarios. MongoDB es diferente de las bases de datos relacionales tradicionales porque utiliza objetos similares a json para almacenar datos en lugar de tablas en bases de datos relacionales.

En este artículo, aprenderemos a usar el comando MongoDB Drop Database para eliminar una base de datos MongoDB. Eliminar una base de datos significa eliminar todas las colecciones (tablas en MongoDB) e índices en ella. Si no desea eliminar toda la base de datos, puede eliminar una sola colección.

prerrequisitos

Estamos usando Windows 10 en este tutorial. Asegúrese de haber descargado e instalado MongoDB Community Server. Esta es una configuración muy simple y encontrará muchos buenos artículos en Internet que lo guiarán a través del proceso. Asegúrese de haberlo agregado a las variables de entorno de su PC. También creamos una base de datos de muestra que contiene una colección llamada productos.

Descripción general

Eliminar una base de datos es muy simple, se puede hacer a través de tres métodos en la línea de comando, o mediante cualquier herramienta GUI (interfaz gráfica de usuario) utilizada para conectarse a una instancia de MongoDB en ejecución.

Para eliminar una base de datos MongoDB a través de la línea de comando, usamos principalmente db.dropDatabase (). Primero entenderemos cómo hacer esto.

Eliminar la definición de la base de datos

Como se mencionó anteriormente, eliminamos una base de datos en MongoDB o usamos el comando db.dropDatabase () para eliminar la base de datos MongoDB.

db.dropDatabase(<writeConcern>)

Esto eliminará la base de datos actual, eliminará todas las colecciones e índices que contiene.

Escribir preocupación Es un parámetro opcional, es un documento que se utilizará para escribir inquietudes, si es mayor que la mayoría.Las inquietudes escritas pueden incluir los siguientes campos:

 w: <value>, j: <boolean>, wtimeout: <number> 
  • La opción w se utiliza para solicitar la confirmación de que la operación de escritura se ha pasado al número especificado de instancias de mongod.
  • La opción j se utiliza para solicitar confirmación, es decir, la operación de escritura se ha escrito en el registro del disco.
  • La opción wtimeout se usa para especificar un límite de tiempo para evitar que las operaciones de escritura se bloqueen indefinidamente.

Usando la opción w, lo siguiente Disponible:

  • w: 1 – Solicite la confirmación de que el problema de escritura se ha pasado a una única instancia de mongod. También es la opción predeterminada.
  • w: 0 – La solicitud no confirma la operación de escritura.
  • w: “mayoría” —— Solicita la confirmación de que la operación de escritura se ha pasado a la mayoría de los servidores primarios y secundarios.

Ahora estudiaremos j Valor de la opción.

  • j: de verdad … Pide confirmación w: Las diferentes instancias de mongod mencionadas en se han escrito en el registro del disco.

Esto se acabó el tiempo La opción especifica el límite de tiempo (en milisegundos) para escribir la pregunta. Hace que la operación de escritura regrese después del límite especificado y devuelva un error.

dropDatabase

También podemos usar directamente el comando dropDatabase para eliminar MongoDB, la base de datos actual. El comando tiene la siguiente forma.

 dropDatabase: 1, writeConcern: <document>, comment: <any> 

Los campos opcionales de este comando son:

  • writeConcern es un parámetro opcional, si es mayor que la mayoría, expresa la preocupación de escritura que se utilizará en forma de documento. Acabamos de estudiar en detalle antes.
  • comentario es un comentario proporcionado por el usuario, adjunto a este comando. Una vez configurado, aparecerá en el registro.

Utilice el comando dropDatabase para eliminar

Podemos eliminar la base de datos a través del comando dropDatabase. Al proporcionar comandos de mongo, me conecto a mi instancia local de mongoDB desde una terminal de Windows.

> mongo

Después de eso, para mostrar todas las bases de datos en mi base de datos MongoDB, usaremos el comando Mostrar base de datos mando. Mostrará todas nuestras bases de datos. Solo creé la base de datos de muestra.

> show dbs
admin    0.000GB
config   0.000GB
example  0.000GB
local    0.000GB

Ahora, para eliminar la base de datos de muestra, primero debemos usar Ejemplo de uso mando.

> use example
switched to db example

Ahora usaremos Eliminar base de datos Comando de db.runCommand (). Ahora, runCommand ejecuta el comando en el contexto de la base de datos actual. Esto significa que ejecutará el comando dropDatabase en la base de datos actual, como se muestra en el siguiente ejemplo:

> db.runCommand(  dropDatabase: 1  )
 "dropped" : "example", "ok" : 1 

Como se mencionó anteriormente, el comando dropDatabase anterior acepta un parámetro writeConcern opcional, así como un campo de comentario. La sintaxis es la siguiente.

 dropDatabase: 1, writeConcern: <document>, comment: <any> 

Utilice el método dropDatabase () para eliminar

Podemos eliminar la base de datos db.dropDatabase () Método también. También elimina la base de datos actual y elimina todos los archivos relacionados.

Conéctese a la base de datos mongoDb nuevamente dando el comando Mongo. Después de eso, podemos verificar todas las bases de datos. Mostrar base de datos mando.

con el fin de db.dropDatabase () El método también es, debemos ingresar a la base de datos que queremos eliminar, usando usar mando.

Ahora usaremos db.dropDatabase () Comando para borrar la base de datos, este es ejemplo En nuestro caso.

> db.dropDatabase()
 "dropped" : "example", "ok" : 1 
The db.dropDatabase() method also accepts an optional writeConcern argument. The syntax then becomes:
 w: <value>, j: <boolean>, wtimeout: <number> 

Use Unix Shell y el comando Eval para eliminar

Este método solo es aplicable a entornos Unix como Ubuntu, Mac o WSL2 para Windows. Aquí, puede usar el comando mongo con el nombre de la base de datos para conectarse a una base de datos específica. Por ejemplo, para conectarnos a la base de datos de muestra, podemos usar el siguiente comando.

$ mongo example

Ahora, podemos eliminar la base de datos de muestra con un comando de una línea, usamos el comando eval seguido del código JavaScript que queremos que MongoDB ejecute. Como se mencionó anteriormente, para eliminar la base de datos, usamos el comando db.dropDatabase (). Ahora, envolvemos este método en la función printjson para obtener el resultado del comando.

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

Abandonar la brújula MongoDB

Ahora, podemos usar herramientas gráficas como MongoDB Compass para eliminar la base de datos o eliminar la base de datos MongoDB de forma muy sencilla. De hecho, cuando instalé MongoDB en mi máquina con Windows, esta herramienta se descargó automáticamente.

Entonces, primero abra MongoDB Compass y verá la opción para conectarse a la base de datos.Queremos conectarnos a nuestra base de datos local, donde Nombre de la CPUanfitrión local con Puerto27017Estos son los valores predeterminados para todas las conexiones MongoDB, a menos que los cambie durante la instalación.

No cambie nada y haga clic conexión Botón.

Ahora estamos conectados a MongoDB que se ejecuta en el host local y podemos ver todas las bases de datos, incluidas ejemplo base de datos.A continuación, coloque el mouse sobre la base de datos de muestra y se mostrará una Eliminar Botón.Haga clic en Eliminar Botón.

Veremos una ventana emergente donde tenemos que escribir el nombre de la base de datos, este es un ejemplo en nuestro caso. Luego haga clic en el botón DROP DATABASE para eliminar la base de datos con MongoDB.

Después de eso, nos llevará de regreso a la pantalla anterior y podremos ver que la base de datos de muestra ha sido eliminada.

en conclusión

En este artículo, aprendimos sobre diferentes comandos de eliminación de bases de datos de MongoDB.También aprendimos sobre el parámetro opcional de atención de escritura, que se puede pasar tanto a db.dropDatabase () Métodos y Eliminar base de datos mando. Este parámetro se utiliza principalmente para grandes sistemas de bases de datos con varios servidores.

¡Esperamos que este artículo le resulte útil! Seguir aprendiendo.