Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Inicia con mongorestore

Nota

Esta página se aplica a los clústeres de Atlas Core. Para usar mongodump y mongorestore para cargar datos en un clúster de Atlas Infinite, consulte Restaurar datos desde una implementación de MongoDB.

Puedes usar mongodump y mongorestore para inicializar un clúster de MongoDB Atlas con datos de una instancia independiente o un conjunto de réplicas de MongoDB existente. Para obtener ayuda sobre cómo inicializar datos desde un clúster fragmentado de MongoDB existente, ponte en contacto con el soporte de Atlas.

1
  1. Si aún no se muestra, selecciona la organización deseada en el menú Organizations de la barra de navegación.

  2. Haga clic en el icono Support en la barra de navegación.

  3. Haga clic en View plan.

Se muestra la página de soporte.

2

Si bien puede escalar un clúster gratuito (anteriormente conocido como M0) a un clúster de pago M10+ utilizando la interfaz de usuario de Atlas, también puede utilizar los procedimientos mongodump y mongorestore de esta sección para copiar datos de un clúster gratuito a un clúster M10+.

Usa la última versión estable de mongodump y de mongorestore para este procedimiento.

Para garantizar una migración actualizada, programe una ventana de mantenimiento en la que pueda detener todas las escrituras en su clúster de origen. Las operaciones de escritura realizadas en el clúster de origen después de que finalice la parte mongodump del procedimiento no se migrarán al clúster de destino.

Si no puede detener las escrituras durante toda la duración de mongodump, ejecute mongodump --oplog con mongorestore --oplogReplay para capturar y reproducir las escrituras que se produzcan durante el volcado. Esto restaura una instantánea de la implementación de origen en el momento en que mongodump finalizó. La opción --oplog solo se puede usar con un conjunto de réplicas.

Nota

mongorestore falla cuando se combina --oplogReplay con --nsExclude. Si usa --oplogReplay, omita --nsExclude del comando mongorestore y elimine los directorios admin y config del directorio dump que creó conmongodump --oplog.

Una vez que mongorestore complete la restauración de datos, deberá migrar sus aplicaciones al clúster Atlas de destino antes de reanudar las operaciones de escritura. Para conectarse a un clúster Atlas, consulte Conectarse a un clúster Atlas.

La cantidad total de tiempo de inactividad requerido depende de factores como el tamaño de los datos que se están migrando y la conexión de red entre tu clúster de origen y Atlas. Si tienes preguntas o inquietudes sobre un periodo de inactividad prolongado, contacta al soporte de Atlas:

1
  1. Si aún no se muestra, selecciona la organización deseada en el menú Organizations de la barra de navegación.

  2. Haga clic en el icono Support en la barra de navegación.

  3. Haga clic en View plan.

Se muestra la página de soporte.

2

Atlas gestiona la creación de usuarios de bases de datos. Si el clúster de origen aplica la autenticación:

  • Permitir acceso de solo lectura al primario.

  • Si desea utilizar mongorestore con la opción --oplogReplay, debe eliminar los directorios admin y config del directorio dump que crea mongodump. Los directorios admin y config contienen información de usuario de la base de datos que no puede agregar a un clúster de Atlas con mongorestore.

No se puede migrar ninguna información de usuario o rol existente a Atlas. Para el clúster de Atlas de destino, se deben crear los usuarios de base de datos apropiados para admitir los patrones de uso de la aplicación. Se deben actualizar las aplicaciones como parte del procedimiento de cambio para usar los nuevos usuarios de base de datos. Para aprender más, se puede consultar Configurar usuarios de base de datos.

Este procedimiento requiere ejecutar mongodump y mongorestore en un host del clúster de origen. Estos programas utilizan recursos del sistema, como la CPU y la memoria, y pueden afectar el rendimiento del host.

Ejecute este procedimiento durante períodos de baja actividad del sistema o durante una ventana de mantenimiento programada. Si el origen es un conjunto de réplicas, puede ejecutar este procedimiento desde el host de un miembro secundario. Tras detener las escrituras en el clúster, espere a que el miembro secundario se sincronice con el principal antes de iniciar este procedimiento.

Este procedimiento utiliza tuberías de Linux para transmitir la salida de mongodump a mongorestore. Si el proceso mongorestore no puede seguir el ritmo del proceso mongodump, es posible que aparezcan errores de tubería rota.

Para obtener orientación sobre cómo abordar los errores persistentes de pipe rota, contacta al soporte de Atlas:

1
  1. Si aún no se muestra, selecciona la organización deseada en el menú Organizations de la barra de navegación.

  2. Haga clic en el icono Support en la barra de navegación.

  3. Haga clic en View plan.

Se muestra la página de soporte.

2

El siguiente tutorial utiliza mongodump y mongorestore para cargar datos desde un clúster de MongoDB existente a un clúster de Atlas:

1

Si la implementación de origen exige autenticación, deberá otorgar a un usuario de base de datos privilegios para leer cualquier base de datos como parte de este procedimiento. Para obtener más información sobre los privilegios de usuario de la base de datos, consulte Control de acceso basado en roles de MongoDB.

Si no existe dicho usuario, cree un usuario en su conjunto de réplicas de MongoDB de origen con el rol de copia de seguridad en la base de datos admin.

Ejemplo

Ejecute el siguiente comando en mongosh para crear mySourceUser en la base de datos admin y asignarle el rol backup. Para conjuntos de réplicas, debe ejecutar este comando en el nodo principal.

use admin
db.createUser(
{
user: "<mySourceUser>",
pwd: "<mySourcePassword>",
roles: [ "backup" ]
}
)
2

Dependiendo del tipo de cadena de conexión que uses, copia una de las siguientes plantillas en tu editor de texto preferido:

Nota

Para conectarte a los clústeres de Atlas, se recomienda usar una cadena de conexión de lista de nodos iniciales DNS usando la opción --uri.

mongodump --uri "mongodb://username:password@mongodb0.example.com:<Port>,mongodb1.example.com:<Port1>,mongodb2.example.com:<Port2>/?replicaSet=<ReplicaSetName>&authSource=admin" \
--archive

Reemplace los ejemplos de hosts con la información de los miembros de su conjunto de réplicas. Reemplaza <ReplicaSetName> con el nombre del set de réplicas de origen.

Para implementaciones autónomas, excluye replicaSet=<ReplicaSetName> y especifica únicamente el nombre de host de la implementación autónoma. Por ejemplo, --uri "mongodb://standalone-mongod.example.net:27017"

Nota

Si tu contraseña contiene caracteres especiales, deben estar codificados en porcentaje.

No ejecute este comando todavía. Continúe al siguiente paso una vez que haya modificado la plantilla.

3

Para ejecutar mongorestore en un clúster de Atlas, debe especificar un usuario de base de datos en el clúster de Atlas que tenga el rol Atlas admin.

Si no existe tal usuario, cree uno:

  1. En Atlas, se debe ir a la página Database Access del proyecto.

    1. Si aún no aparece, se debe seleccionar la organización que contiene el proyecto en el menú Organizations de la barra de navegación.

    2. Si aún no se muestra, seleccione su proyecto en el menú Projects de la barra de navegación.

    3. En la barra lateral, haz clic en Database & Network Access en la sección Security.

      Se muestra la página de acceso a la base de datos y a la red.

  2. Haga clic en Add New Database User.

  3. Agrega un usuario Atlas admin.

Para obtener más información sobre la gestión de usuarios, consulta Configura usuarios de base de datos.

4
  1. 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.

  2. Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Clusters en la sección Database.

La página de clústeres se muestra.

5

En el menú para el clúster, haz clic en Command Line Tools.

6

La sección Binary Import and Export Tools de la pestaña Command Line Tools muestra una plantilla copiable con las opciones mínimas necesarias para conectar mongorestore a su clúster Atlas.

La plantilla incluye valores de marcador de posición para ciertas opciones. Copia y pega la plantilla en tu editor de texto preferido y realiza las siguientes modificaciones:

  • password: reemplaza esto con la contraseña para el usuario especificado en username. La plantilla incluye un usuario de base de datos para el proyecto como el username. Si deseas autenticarte como un usuario diferente, reemplaza el valor de username y especifica la contraseña para ese usuario en password.

  • Agregue --nsExclude y establezca su valor en "admin.system.*".

Según el tipo de cadena de conexión que utilices, tu plantilla debería parecerse a uno de los siguientes comandos:

mongorestore --uri "mongodb://username:password@00.foo.mongodb.net:27017,01.foo.mongodb.net:27017,02.foo.mongodb.net:27017/?replicaSet=myRepl&authSource=admin" \
--archive \
--ssl \
--nsExclude "admin.system.*"
7

Importante

Asegúrese de que el host donde está ejecutando mongodump y mongorestore esté en la lista de acceso IP del proyecto.

Para revisar la lista de acceso IP de tu proyecto, haz clic en Network Access en la sección Security de la barra lateral. La pestaña IP Access List se muestra. Para obtener más información, consulte Lista de acceso IP.

En su editor de texto preferido, utilice el operador de tubería | para separar los comandos mongodump y mongorestore. Según el tipo de cadena de conexión que utilice, el comando final debería ser similar a uno de los siguientes:

mongodump --uri "mongodb://username:password@mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/?replicaSet=sourceRS&authSource=admin" \
--archive \
| \
mongorestore --uri "mongodb://username:password@00.foo.mongodb.net:27017,01.foo.mongodb.net:27017,02.foo.mongodb.net:27017/?replicaSet=myAtlasRS&authSource=admin" \
--archive \
--ssl \
--nsExclude "admin.system.*"

Ejecuta el comando completo desde una terminal o shell conectada a un host en tu clúster de origen.

Una vez finalizado el procedimiento correctamente, conéctese a su clúster Atlas mediante mongosh y verifique el resultado. Para obtener más información, consulte Conectarse a un clúster mediante mongosh.

Se debe actualizar las aplicaciones para que apunten al clúster Atlas antes de reanudar las operaciones de guardado. Para aprender a conectar aplicaciones a Atlas, consulta Conectar a un clúster mediante Librerías de clientes.

Califique esta página