MongoDB es un motor de base de datos NoSQL que en los últimos años ha recibido mucha popularidad. Es famosos debido a que es escalable, potente, fácil de usar y confiable. En este tutorial, te mostraremos cómo importar y exportar las bases de datos en MongoDB.

Importar base de datos en MongoDB

De modo de ejemplo, vamos a usar una base de datos de prueba para hacer la importación y la exportación, para ello nos descargaremos la base de datos:

# wget https://raw.githubusercontent.com/mongodb/docs-assets/primer-dataset/primer-dataset.json

Una vez nos hayamos descargado el fichero, deberíamos de tener un fichero llamado primer-dataset.json (de unos 12MB de tamaño aproximadamente). Importaremos los datos de este archivo a una nueva base de datos llamada mibasededatos y a una colección llamada restaurantes.

Utilizaremos el comando mongoimport de la siguiente forma:

# mongoimport --db mibasededatos --collection restaurantes --file primer-dataset.json

El resultado del comando debería de ser algo como esto:

2020-11-11T19:37:55.607+0000    connected to: mongodb://localhost/
2020-11-11T19:37:57.841+0000    25359 document(s) imported successfully. 0 document(s) failed to import

Como podéis observar, la base de datos no la hemos tenido que crear, si no que al importar los datos se ha creado de forma automática.

Comprobar los datos importados

Nos conectaremos a la base de datos:

$ sudo mongo mibasededatos

Se nos habrá cambiado el prompt, por lo que estaremos conectados a la base de datos, contaremos los documentos de la colección importada:

> db.restaurantes.count()

El resultado que debería de aparecer es 25359.

Exportar base de datos en MongoDB

En MongoDB, cuando se exporta información, se puede obtener un archivo de texto legible por el ser humano con sus datos. Por defecto, la información se exporta en formato json, pero también se puede exportar en formato csv.

Para exportar información desde MongoDB, utilizaremos el comando mongoexport. Este comando nos permite exportar de forma detallada, por lo que podemos especificar una base de datos, una colección, un campo e incluso utilizar una consulta para la exportación.

SI queremos exportar la colección que hemos importado anteriormente, debemos de ejecutar lo siguiente:

mongoexport --db mibasededatos -c restaurants --out newdbexport.json

En el comando anterior, se utilizó --db para especificar la base de datos, -c para la colección y --out, para el archivo en el que se guardarán los datos.

El resultado de una exitosa exportación de mongoexport debe tener el siguiente aspecto:

2020-11-11T19:39:57.595+0000    connected to: mongodb://localhost/
2020-11-11T19:39:58.619+0000    [###############.........]  newdb.restaurants  16000/25359  (63.1%)
2020-11-11T19:39:58.871+0000    [########################]  newdb.restaurants  25359/25359  (100.0%)
2020-11-11T19:39:58.871+0000    exported 25359 records

Y con esto veremos que hemos exportado los mismos registros que hemos importado.

Haz que cada palabra cuente: tu donación nos inspira a seguir creando contenido. Accede al apartado de Donación para hacer tu aportación