Para restaurar una base de datos individual o una colección (o documentos específicos) a partir de una instantánea, puede utilizar la función de copia de seguridad consultable para exportar una base de datos o colección individual y restaurarla en la implementación de destino.
Considerations
Antes de intentar la restauración, asegúrese de que el host de destino tenga suficiente espacio de almacenamiento para los archivos de restauración y la base de datos restaurada, además de espacio adicional para el crecimiento del conjunto de datos. Utilice db.stats() para consultar el tamaño actual de la base de datos.
Importante
Para conectarse a una instancia de copia de seguridad consultable desde su propia estación de trabajo, utilice las versiones más recientes de MongoDB Database Tools, que incluyen mongodump y mongorestore, y la versión más reciente de mongosh.
Las versiones anteriores de mongodump incluyen un problema que puede provocar que las claves en las opciones de colección se muestren en el orden incorrecto. Para obtener más información, consulte HERRAMIENTAS-3411.
Si ejecuta MongoDB Ops Manager en moda local, instale la versión que aparece en la tabla de compatibilidad de Database Tools para su versión de MongoDB Ops Manager en lugar de la última versión disponible.
Restaurar una base de datos o colección desde un respaldo consultable
Puede utilizar una instantánea de copia de seguridad consultable para exportar datos de una base de datos o una colección y restaurarlos en la implementación de destino. El siguiente procedimiento se conecta a la instancia de copia de seguridad consultable a través del túnel proporcionado por Ops Manager [1].
Nota
Si el demonio se ejecuta sin acceso a Internet, consulte Configurar la implementación para que tenga acceso limitado a Internet para instalar los binarios adecuados.
Ve a la vista Backup y haz clic en la pestaña Overview.
Para la implementación cuya copia de seguridad deseas query, haz clic en en la columna Options y luego selecciona Query.
También puedes hacer clic en la implementación para ver sus snapshots y hacer clic en el botón Query bajo la columna Actions.
Abre un túnel de copia de seguridad al Snapshot consultable.
Selecciona el snapshot que se va a query y haz clic en Next.
Start el proceso para query un snapshot. Se te pedirá una verificación en dos pasos.
Seleccione Backup Tunnel como método de conexión a la instantánea consultable. [1]
Selecciona tu plataforma y descarga.
Descomprime el archivo descargado.
Nota
Espere a que se monte la Queryable snapshot antes de continuar. El tiempo de montaje del snapshot depende del tamaño del snapshot. Verifica que el snapshot esté montado navegando a Continuous Backup y seleccionando la pestaña Restore History. Cuando el snapshot está montado, la columna Status informa la fecha y hora de la operación de montaje.
Abre una terminal o consola y ve al directorio descomprimido <tunnel>. Ejecuta el archivo ejecutable para iniciar el túnel.
El puerto por defecto para el túnel es
27017. Para cambiar el puerto, utiliza la bandera--local, como en el siguiente ejemplo:./<tunnel executable> --local localhost:27020 Nota
Si cambias el puerto, debes incluir la información del puerto al conectarte.
Utilice mongodump para exportar una única base de datos o colección desde la copia de seguridad consultable.
- Para exportar los datos de una base de datos,
Incluya las siguientes opciones
mongodumppara conectarse al túnel [1]:--portestablecido en el puerto para el túnel--dbestablecido al nombre de la base de datos a exportar
mongodump --port <port for tunnel> --db <single-database> --out <data-dump-path> Ejemplo
Para conectarse a un túnel que se ejecuta en el puerto
27020para extraer datos de la base de datostestal directorio/mydata/restoredata/:mongodump --port 27020 --db test --out /mydata/restoredata/ mongodumpgenera los archivos de la base de datostesten el directorio/mydata/restoredata/test/.Si
mongodumpno está en suPATH, especifique la ruta para la herramienta.- Para exportar los datos de una colección,
Incluya las siguientes opciones para conectarse al túnel [1]:
--portse establece en el puerto para el túnel.--dbestablecido en el nombre de la base de datos a exportar.--collectionpara una sola colección.
mongodump --port <port for tunnel> \ --db <single-database> \ --collection <collection-name> \ --out <data-dump-path> Ejemplo
Para conectarse a un túnel que se ejecuta en el puerto
27020para volcar los datos de la colecciónrestaurantsde la base de datostestal directorio/mydata/restoredata/:mongodump --port 27020 \ --db test \ --collection restaurants \ --out /mydata/restoredata/ mongodumpgenera los datos de la colecciónrestaurantsen el archivo/mydata/restoredata/test/restaurants.bson.
Utilice mongorestore para restaurar la base de datos o colección individual.
- Para restaurar una sola base de datos,
Incluya las siguientes opciones
mongorestore:--portconfigurado al puerto del clúster de destino.--dbestablecer el nombre de la base de datos de destino.
Opcionalmente, puede incluir
--droppara eliminar la base de datos en el clúster de destino si la base de datos ya existe.
mongorestore --port <port> --db <destination database> <data-dump-path/database> --drop
Por ejemplo, para restaurar desde el directorio /mydata/restoredata/test a una nueva base de datos restoredTest:
mongorestore --port 27017 --db restoredTest /mydata/restoredata/test --drop
El ejemplo supone que el nodo primario del conjunto de réplicas de destino o el nodo mongos del clúster fragmentado de destino escucha en el puerto 27017.
- Para restaurar una sola colección,
Incluya las siguientes opciones
mongorestore:--portconfigurado al puerto del clúster de destino.--dbestablecer el nombre de la base de datos de destino.
Opcionalmente, puede incluir
--droppara eliminar la colección en el clúster de destino si la colección ya existe.
mongorestore --port <port> --db <destination database> --collection <collection-name> <data-dump-path/dbname/collection.bson> --drop
Por ejemplo, para restaurar desde el archivo de datos /mydata/restoredata/test/restaurants.bson a una nueva colección rest2 en la base de datos test2:
mongorestore --port 27017 --db test2 --collection rest2 /mydata/restoredata/test/restaurants.bson --drop
El ejemplo supone que el nodo primario del conjunto de réplicas de destino o el nodo mongos del clúster fragmentado de destino escucha en el puerto 27017.
| [1] | (1, 2, 3, 4) Como alternativa, en lugar de conectarse a través del túnel, puede conectarse directamente a la copia de seguridad consultable utilizando los archivos PEM X.509 proporcionados. Si se conecta directamente a la copia de seguridad consultable, debe especificar el nombre de host y el puerto, la opción TLS/SSL y los certificados X.509. |
Importante
Rotar la clave maestra después de la restauración de snapshots cifrados con AES256-GCM
Si restaura una instantánea cifrada que Ops Manager cifró con AES256-GCM, gire su clave maestra después de completar la restauración.