Para crear una copia de seguridad en MongoDB, copie los archivos directamente o use una de varias herramientas de administración/copia de seguridad.
Hay varias formas de hacer una copia de seguridad de una base de datos MongoDB:
- Copie los archivos de datos
- Utilice
mongodump
- Usar el administrador de la nube de MongoDB
- Usar el administrador de operaciones
Copiar los archivos de datos
Puede copiar los archivos de datos subyacentes que utiliza MongoDB para almacenar datos. Estos se encuentran en el directorio de datos.
La ubicación predeterminada del directorio de datos es /data/db , sin embargo, si usa una ubicación diferente, deberá usar esa en su lugar.
Debe copiar todo el directorio para una copia de seguridad completa.
También puede usar instantáneas si el volumen lo admite. Por ejemplo, en Linux, use LVM (Administrador de volúmenes lógicos) para crear una instantánea, luego puede copiar esa instantánea a su sitio de copia de seguridad/ubicación remota.
Usar mongodump
Puedes usar mongodump
para hacer una copia de seguridad de los datos y mongorestore
para restaurarlo.
Para realizar rápidamente una copia de seguridad de todo el contenido del servidor en ejecución, abra una nueva Terminal/Símbolo del sistema, cambie a un directorio en el que desee /dump carpeta en la que se creará y escriba lo siguiente:
mongodump
Deberá proporcionar la ruta completa si el directorio bin de MongoDB no está en su RUTA.
Si encuentra que no puede ejecutar mongodump , asegúrese de haber salido de mongo utilidad, o abrió una nueva ventana de Terminal/Símbolo del sistema antes de ejecutar mongodump , ya que es una utilidad separada.
Mensaje resultante:
2016-07-12T15:44:34.467+0700 writing music.artists to 2016-07-12T15:44:34.467+0700 writing music.musicians to 2016-07-12T15:44:34.467+0700 writing music.catalog to 2016-07-12T15:44:34.468+0700 done dumping music.artists (13 documents) 2016-07-12T15:44:34.469+0700 done dumping music.musicians (10 documents) 2016-07-12T15:44:34.469+0700 done dumping music.catalog (10 documents) 2016-07-12T15:44:34.470+0700 writing music.producers to 2016-07-12T15:44:34.470+0700 writing music.jazz to 2016-07-12T15:44:34.470+0700 done dumping music.producers (5 documents) 2016-07-12T15:44:34.470+0700 done dumping music.jazz (1 document) 2016-07-12T15:44:34.534+0700 writing test.restaurants to 2016-07-12T15:44:34.705+0700 done dumping test.restaurants (25359 documents)
Y así es como se ve en el Finder de mi Mac:

Como puede ver, ha creado una carpeta llamada dump , luego una carpeta para cada base de datos, luego volcó todas las colecciones y sus metadatos en la carpeta de la base de datos respectiva. He ampliado la música carpeta de base de datos para mostrar los archivos dentro de ese directorio.
Tenga en cuenta que mongodump
sobrescribe los archivos de salida si existen en la carpeta de datos de respaldo, así que asegúrese de mover o cambiar el nombre de cualquier archivo que necesite conservar antes de ejecutar mongodump
de nuevo.
Copia de seguridad de una sola base de datos
Puede hacer una copia de seguridad de una sola base de datos especificando el nombre de la base de datos en --db
parámetro:
mongodump --db=music
Copia de seguridad de una sola colección
Puede hacer una copia de seguridad de una sola colección especificando el nombre de la colección en --collection
parámetro:
mongodump --db=music --collection=artists
Especifique una ubicación de copia de seguridad
Usa el --out
parámetro para especificar el directorio en el que desea que se escriba la copia de seguridad:
mongodump --db music --out /data/backups
Más opciones
mongodump
tiene muchas más opciones para especificar cómo se respaldan los datos. Siempre puedes ejecutar mongodump --help
para ver qué opciones están disponibles.
Restaurar un mongodump
Copia de seguridad
Puede restaurar cualquier mongodump
copia de seguridad ejecutando mongorestore
. que funciona de manera similar a mongodump
.
Ver mongorestore --help
para más información.
mongodump
y mongorestore
están pensados principalmente para implementaciones más pequeñas y para copias de seguridad y restauraciones parciales basadas en una consulta, sincronización de producción a entornos de ensayo o desarrollo, o cambio del motor de almacenamiento de un sistema independiente.
Para sistemas más grandes, clústeres fragmentados o conjuntos de réplicas, use un sistema de respaldo más sólido, como MongoDB Cloud Manager u Ops Manager.
Administrador de la nube de MongoDB
MongoDB Cloud Manager es una plataforma alojada para administrar MongoDB.
Puede usar MongoDB Cloud Manager para realizar copias de seguridad continuas de conjuntos de réplicas y clústeres fragmentados de MongoDB leyendo los datos de registro de operaciones de su implementación de MongoDB.
MongoDB Cloud Manager funciona por suscripción. Más información aquí.
Gerente de operaciones
Ops Manager es como MongoDB Cloud Manager, excepto que está instalado en su entorno local (es decir, no en la nube). Por lo tanto, puede usarlo para monitorear, automatizar y hacer una copia de seguridad de su implementación de MongoDB.
Ops Manager está disponible para los suscriptores de MongoDB.