En toda base de datos siempre necesitaremos importar y exportar datos. Ya sea por prevención, seguridad o porque haremos un movimiento que puede hacer que la base de datos quede mal. El punto es que siempre lo necesitaremos.
Hoy veremos cómo hacer un respaldo completo de una base de datos en MongoDB utilizando tanto mongoexport y mongoimport como mongodump y mongorestore.
Mongoexport funciona para exportar. Para importar datos que respaldamos con esta herramienta, utilizamos mongoimport.
Mongodump funciona para exportar, y su contrario es mongorestore.
La diferencia es que mongodump conserva los datos de una forma más “fiel”, es decir, si tenemos datos que no son simples cadenas o números, éste método tratará de que queden intactos al exportarlos e importarlos.
Otra diferencia es que el primero exporta a JSON y el segundo a BSON. Si me preguntan a mí, prefiero JSON, pues guardo datos normales.
La sintaxis es la siguiente:
mongoexport --db tuBaseDeDatos --collection laColeccion --out C:\la\ruta\de\salida\del\archivo.json
Y para importar, usamos esto:
mongoimport --db tuBaseDeDatos --collection laColeccion --file C:\la\ruta\del\archivo.json
Para ejemplificar esto, usaré una base de datos de una tienda, que tendrá una colección llamada productos. Habrá 3 registros en dicha colección, los cuales se ven así:
Ahora voy a exportarlos:
Nota: no puse la ruta completa, sólo puse el nombre del archivo, por lo que el programa tomará la ruta actual como la ruta en donde debe quedar el archivo. En este caso es la raíz del disco D.
Si visito la ruta en donde lo exporté, veré que se creó un archivo que se puede abrir con un editor de texto plano:
Como ya hemos vaciado la tabla, vamos a probar la importación. Voy a importar el archivo:
Y ahora, si veo los registros que tengo, veré esto:
Y así podemos importar y exportar. Veamos ahora las otras 2 herramientas.
Para mostrar la diferencia, ahora vamos a exportar una base de datos completa.
Para exportar, hacemos lo siguiente:
mongodump --db tuBaseDeDatos --out C:\la\ruta\de\salida\de\la\carpeta
Y para importar, esto:
mongorestore C:\la\ruta\de\la\carpeta
En este caso no especificamos base de datos ni colección, pues la base de datos será creada automáticamente.
Utilizaremos la misma base de datos de productos
Para exportar es:
Ahora para importar únicamente paso el nombre de la carpeta como argumento:
Si tenemos control de acceso, podemos pasar nuestro usuario y contraseña con –username y –password respectivamente. Por cierto, la contraseña debe ir entre comillas.
También tenemos las opciones –host y –port. Y puede que haya otras, pero espero haber mencionado aquí las más importantes.
Por otro lado, podemos exportar colecciones únicas, base de datos, todas las bases de datos, y muchas combinaciones que no podría explicar en un post.
Aquí dejo una lista de enlaces que pueden ser de ayuda:
En este post te enseñaré a imprimir la letra ñ en una impresora térmica. Voy…
En este post te quiero compartir mi experiencia tramitando un acta de nacimiento de México…
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Esta web usa cookies.
Ver comentarios