Para restaurar una sola base de datos o una colección (o documentos específicos) desde una instantánea, puede usar la Copia de seguridad consultable para exportar una sola base de datos o colección para restaurarla en la implementación de destino.
Considerations
Antes de intentar una restauración, asegúrese de que el host para su implementación objetivo 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. Utiliza db.stats() para determinar el tamaño actual de la base de datos.
Importante
Utilice las últimas versiones de MongoDB Database Tools, que incluyen mongodump y mongorestore. Utiliza la última versión de mongosh.
Las versiones antiguas de mongodump incluyen un inconveniente que puede provocar que las claves en las opciones de la colección se exporten en orden incorrecto. Para aprender más, consulta TOOLS-3411.
Restaurar una base de datos o colección desde un respaldo consultable
Puedes utilizar un snapshot de respaldo consultable para exportar datos de una base de datos o una colección y restaurar en la implementación de destino. El siguiente procedimiento se conecta a la instancia de respaldo consultable a través del túnel proporcionado por Cloud Manager [1].
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 el método de conexión al snapshot consultable. [1]
Selecciona tu plataforma y descarga.
Descomprima el archivo descargado.
Nota
Espere a que se monte la instantánea consultable antes de continuar. El tiempo de montaje de la instantánea depende de su tamaño. Para verificar que la instantánea esté montada:
En MongoDB Cloud Manager, ve a la página Continuous Backup de tu proyecto.
Si aún no se muestra, seleccione la organización que contiene su proyecto deseado en el menú Organizations de la barra de navegación.
Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.
En la barra lateral, haz clic en Continuous Backup en la sección Database.
Se muestra la página de copia de seguridad continua.
Selecciona la pestaña Restore History.
Cuando el snapshot está montado, la columna Status informa la fecha y la hora de la operación de montaje.
Abra una terminal o un símbolo del sistema y acceda al directorio <tunnel> sin comprimir. Ejecute 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.
Utiliza mongodump para exportar una única base de datos o colección del respaldo consultable.
- Para exportar los datos de una base de datos,
Incluya las siguientes
mongodumpopciones para conectarse al túnel [1]:--portestablecido en el puerto para el túnel--dbestablecido al nombre de la base de datos a exportar--outEstablezca un directorio vacío para sacar los datos vaciados.Importante
Asegúrese de que el usuario que ejecuta pueda escribir en el directorio
mongodumpespecificado.
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 volcar datos de la base de datostestal directorio/mydata/restoredata/:mongodump --port 27020 --db test --out /mydata/restoredata/ mongodumpgenera los archivos de base de datostesten el directorio/mydata/restoredata/test/.Si no
mongodumpestáPATHen, especifique la ruta de la herramienta.- Para exportar los datos de una colección,
incluye 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.--outEstablezca un directorio vacío para sacar los datos vaciados.Importante
Asegúrese de que el usuario que ejecuta pueda escribir en el directorio
mongodumpespecificado.
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 datos de la colecciónrestaurantsde la base de datostestal directorio/mydata/restoredata/:mongodump --port 27020 \ --db test \ --collection restaurants \ --out /mydata/restoredata/ mongodumpexporta los datos de la colecciónrestaurantsal archivo/mydata/restoredata/test/restaurants.bson.
Use mongorestore para restaurar la única base de datos o colección.
- Para restaurar una sola base de datos,
Incluya las siguientes
mongorestoreopciones:--portconfigurado al puerto del clúster de destino.--dbestablecer el nombre de la base de datos de destino.
Opcionalmente, puede incluir para eliminar la base de datos en el clúster de destino si la base de datos ya
--dropexiste.
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 primario del set de réplicas de destino o el mongos del clúster de destino escucha en el puerto 27017.
- Para restaurar una sola colección,
Incluya las siguientes
mongorestoreopciones:--portconfigurado al puerto del clúster de destino.--dbestablecer el nombre de la base de datos de destino.
Opcionalmente, puedes incluir
--droppara descartar 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 primario del set de réplicas de destino o el mongos del clúster de destino escucha en el puerto 27017.
| [1] | (1, 2, 3, 4) Alternativamente, en lugar de conectar a través del túnel, puedes conectar directamente al respaldo consultable, usando los archivos X.509 PEM proporcionados. Si se conecta directamente al respaldo 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 restauras un snapshot cifrado que Cloud Manager cifrara con AES256-GCM, rota tu clave maestra después de completar la restauración.