Esta documentación es para la versión 100.18.0 de mongorestore.
Definición
El mongorestore programa carga datos desde un volcado de base de datos binario creado por mongodump o desde la entrada estándar en una mongod mongos instancia o. mongorestore se instala al instalar las herramientas de base de datos de MongoDB.
Puedes usar los MongoDB Database Tools para migrar de una implementación autoalojada a MongoDB Atlas. MongoDB Atlas es el servicio totalmente gestionado para las implementaciones de MongoDB en la nube. Para obtener más información, consulta Propaga con mongorestore.
Para aprender todas las formas en que puede migrar a MongoDB Atlas, consulte Migrar o importar datos.
Puede restaurar los archivos BSON generados desde mongodump en implementaciones de MongoDB que ejecuten la misma versión principal o versión de compatibilidad de funcionalidades entre versiones que la implementación de origen.
mongorestore presenta los siguientes comportamientos y limitaciones:
Se debe ejecutar
mongorestoredesde la línea de comandos del sistema, no desde el MongoDB Shell.MongoDB no admite la ejecución simultánea de varios programas
mongorestorepara la misma colección.No puedes usar
mongorestorecon una colección que utiliza Queryable Encryption.
Sintaxis
Utilice la siguiente sintaxis de comando al ejecutar mongorestore:
mongorestore <options> <connection-string> <directory or file to restore>
Consulte Opciones para ver qué opciones puede usar cuando mongorestore ejecute.
Cuando ejecuta mongorestore sin argumentos, la configuración predeterminada es restaurar datos desde un ./dump directorio local a una mongod instancia local que se ejecuta en el 27017 puerto:
mongorestore
También se puede especificar un directorio dump en una ruta diferente. Por ejemplo, el siguiente comando restaura datos desde un directorio en ./downloads/dump a un clúster de Atlas especificado por una cadena de conexión:
mongorestore --uri="<my-connection-string>" ./downloads/dump
A medida que mongorestore se restaura desde el directorio indicado, crea la base de datos y las colecciones según sea necesario y deja un registro del progreso:
2019-07-08T14:37:38.942-0400 preparing collections to restore from 2019-07-08T14:37:38.944-0400 reading metadata for test.bakesales from dump/test/bakesales.metadata.json 2019-07-08T14:37:38.944-0400 reading metadata for test.salaries from dump/test/salaries.metadata.json 2019-07-08T14:37:38.976-0400 restoring test.salaries from dump/test/salaries.bson 2019-07-08T14:37:38.985-0400 no indexes to restore 2019-07-08T14:37:38.985-0400 finished restoring test.salaries (10 documents, 0 failures) 2019-07-08T14:37:39.009-0400 restoring test.bakesales from dump/test/bakesales.bson 2019-07-08T14:37:39.011-0400 restoring indexes for collection test.bakesales from metadata 2019-07-08T14:37:39.118-0400 finished restoring test.bakesales (21 documents, 0 failures) 2019-07-08T14:37:39.118-0400 restoring users from dump/admin/system.users.bson 2019-07-08T14:37:39.163-0400 restoring roles from dump/admin/system.roles.bson 2019-07-08T14:37:39.249-0400 31 document(s) restored successfully. 0 document(s) failed to restore.
También es posible restaurar una colección o colecciones específicas desde el directorio dump. Por ejemplo, la siguiente operación restaura la colección test.purchaseorders desde los archivos de datos correspondientes en el directorio dump:
mongorestore --nsInclude=test.purchaseorders ./dump
Si el directorio dump no contiene el archivo de datos correspondiente para el namespace especificado, mongorestore no se restaura ningún dato. Por ejemplo, el siguiente comando especifica un namespace de colección que no tiene datos correspondientes en el directorio dump:
mongorestore --nsInclude=foo.bar dump/
mongorestore genera los siguientes mensajes:
2019-07-08T14:38:15.142-0400 preparing collections to restore from 2019-07-08T14:38:15.142-0400 0 document(s) restored successfully. 0 document(s) failed to restore.
Si mongorestore no puede encontrar información de la base de datos a partir de la --nsInclude opción, el archivo de metadatos o el nombre del directorio de volcado, restaura a una test base de datos. Por ejemplo, el siguiente mongorestore comando restaura desde un bands.bson archivo:
mongorestore ./bands.bson
Debido a que no hay información de namespace ni una ruta como ./dump/music/bands.bson, mongorestore tiene la siguiente salida:
2026-01-23T11:26:31.821-0500 restoring test.bands from bands.bson 2026-01-23T11:26:31.867-0500 finished restoring test.bands (1 document, 0 failures) 2026-01-23T11:26:31.867-0500 1 document(s) restored successfully. 0 document(s) failed to restore.
mongorestore restaura los datos a una colección bands en la base de datos test. Crea la base de datos y la colección si no existen.
Para más mongorestore ejemplos, consulte Ejemplos de mongorestore.
opciones
Esta sección incluye información sobre todas las opciones disponibles para mongorestore.
--archive=<file>Restaura desde un archivo creado por
mongodump --archive.mongorestorerestaura desde el archivo especificado o, si no se especifica un archivo, desde la entrada estándar (stdin).Para restaurar desde un archivo de archivo, ejecutar
mongorestorecon la opción--archivey el nombre del archivo de fichero.Para restaurar desde la entrada estándar, ejecuta
mongorestorecon la opción--archivey omite el nombre del archivo.El siguiente ejemplo muestra cómo restaurar desde la entrada estándar:
mongodump --archive | mongorestore --archive Esta pipeline de comandos primero ejecuta
mongodumpcon la bandera--archive, que imprime su salida enstdout, o salida estándar. Luego, la entrada se canaliza a la entrada estándar demongorestoreutilizando el operador pipe|.Importante
No se puede utilizar la
--archiveopción con la opción, que especifica el directorio de--dirvolcado.Las
--dbopciones y están obsoletas al restaurar desde un archivo de--collection--nsIncludearchivo. Para restaurar una base de datos o colección específica, utilice.Si utiliza la
--archiveopción con el<path>parámetro,mongorestore<path>ignora.
--authenticationDatabase=<dbname>Especifica la base de datos de autenticación donde
--usernamese ha creado el especificado. Úselo junto con las opciones--username--passwordy.Para obtener más información sobre las bases de datos de autenticación, consulta Base de datos de autenticación.
Si utiliza GSSAPI (Kerberos), PLAIN (LDAP SASL)
MONGODB-AWSauthentication mechanismso, debe--authenticationDatabaseestablecer$externalen.Alternativamente, también puedes especificar la base de datos de autenticación directamente en la
URI connection string. El ofrecer una cadena de conexión, mientras también se utiliza--authenticationDatabasey ademas se especifica información conflictiva, resultará en error.
--authenticationMechanism=<name>Por defecto: SCRAM-SHA-1
Especifica el mecanismo de autenticación que la
mongorestoreinstancia utiliza para autenticarsemongodenmongoso.Modificado en la versión 100.1.0:
A partir de la
100.1.0versión,mongorestoreañade soporte para elMONGODB-AWSmecanismo de autenticación al conectarse a un clúster de MongoDB Atlas.ValorDescripciónMecanismo de autenticación de respuesta de desafío con sal estándarRFC que utiliza la 5802 1 función hash SHA-.
Mecanismo de autenticación de respuesta de desafío con sal estándarRFC que utiliza la 7677 256 función hash SHA-.
Se debe establecer featureCompatibilityVersion en
4.0.Autenticación de certificados TLS/SSL de MongoDB.
MONGODB-AWSAutenticación externa utilizando credenciales de AWS IAM para conectarse a un clúster de MongoDB Atlas. Consulte Conéctese a un clúster de MongoDB Atlas usando credenciales de AWS IAM.
Nuevo en la versión 100.1.0.
GSSAPI (Kerberos)
Autenticación externa mediante Kerberos. Este mecanismo solo está disponible en MongoDB Enterprise.
PLAIN (SASL LDAP)
Autenticación externa mediante LDAP. También puede utilizar
PLAINpara autenticar a los usuarios de base de datos.PLAINtransmite las contraseñas en texto sin cifrar. Este mecanismo solo está disponible en MongoDB Enterprise.Alternativamente, también puedes especificar el mecanismo de autenticación directamente en la
URI connection string. Proveer una cadena de conexión, mientras también se utiliza--authenticationMechanismy se especifica información conflictiva, resultará en error.
--awsSessionToken=<AWS Session Token>Si se conecta a un clúster de MongoDB Atlas usando
MONGODB-AWSauthentication mechanismy usa tokens de sesión además de su ID de clave de acceso de AWS y clave de acceso secreta, puede especificar su token de sesión de AWS en:este campo,
el
AWS_SESSION_TOKENauthMechanismPropertiesparámetro al,connection stringola variable de entorno
AWS_SESSION_TOKEN.
Consulta Conectar a un clúster de MongoDB Atlas usando credenciales de AWS IAM para obtener un ejemplo de cada uno.
Solo válido cuando se utilizan los valores
MONGODB-AWSauthentication mechanismy.
--bypassDocumentValidationPermite a
mongorestoreomitir la validación de documentos durante la operación. Esto permite insertar documentos que no cumplen con los requisitos de validación.
--collection=<collection>, -c=<collection>Importante
Se desaconseja el uso de
--dblas opciones--collectiony al restaurar desde un directorio o un archivo comprimido. Para restaurar una base de datos o colección específica desde un archivo comprimido o un directorio, consulte--nsIncludela opción.Especifica el nombre de la colección de destino donde
mongorestorese restaurarán los datos desde un archivo BSON. Si no se--collectionespecifica,mongorestorese toma el nombre de la colección del archivo de entrada. Si el archivo de entrada tiene una extensión, MongoDB la omite del nombre de la colección.mongorestore --db=reporting --collection=employeesalaries dump/test/salaries.bson
--compressors=<string>Especifica el algoritmo de compresión que
mongodumputiliza para la comunicación de red entre el clientemongorestorey el servidor MongoDB. Puede utilizar uno o más de estos valores para la opción--compressors:snappyzlibzstd
Si se especifican varios algoritmos de compresión,
mongorestorese debe usar el primero de la lista que sea compatible con la implementación de MongoDB.Para obtener más información sobre los compresores, consultar la documentación sobre la compresión de red del controlador Go.
--config=<filename>Nuevo en la versión 100.3.0.
Especifica la ruta completa a un archivo de configuración YAML que contiene valores confidenciales para las siguientes opciones
mongorestore:Esta es la forma recomendada de especificar una contraseña para
mongorestore, además de especificarla mediante una solicitud de contraseña. Puedes utilizar cualquier combinación de los argumentos en el archivo.El archivo de configuración tiene la siguiente estructura:
password: <password> uri: mongodb://mongodb0.example.com:27017 sslPEMKeyPassword: <password> Si especifica la opción
passwordsin especificaruri, puede especificar los otros componentes de la cadena de conexión utilizando las opciones de línea de comandosmongorestore, como--usernamey--host.Asegúrate de proteger este archivo con los permisos adecuados del sistema de archivos.
Importante
Al utilizar la opción
--config, ten en cuenta las siguientes limitaciones y comportamientos:Si proporcionas el campo
passwordy una cadena de conexión en el campouricon una contraseña conflictiva,mongorestoreresultará en un error.Si especifica un archivo de configuración con
--configy también utiliza las opciones de la línea de comandos--password,--urio--sslPEMKeyPasswordmongorestore, la opción de la línea de comandos anulará la opción correspondiente del archivo de configuración.
--convertLegacyIndexesNuevo en la versión 100.0.0.
Remueve cualquier opción de índice no válida especificada en la correspondiente
mongodumpsalida, y reescribe cualquier valor de clave de índice heredado para usar valores válidos.Las opciones de índice no válidas son aquellas especificadas para un índice que no figuran como campos válidos para el comando. Por
createIndexesejemplo,nameycollationson válidas, pero una arbitrariacustom_fieldno lo es. Si--convertLegacyIndexesse especifica, se descartan las opciones de índice no válidas encontradas.Los valores declave de índice heredados son aquellos que ya no son compatibles con un tipo de índice específico. Por ejemplo,
1y-1son valores válidos, pero0o una cadena vacía son valores heredados. Si--convertLegacyIndexesse especifica, cualquier valor de clave de índice heredado que se encuentre se reescribe1como. Las cadenas no vacías no se reemplazan.
Sin la opción
--convertLegacyIndexesespecificada, la presencia de opciones de índice no válidas o valores clave de índice heredados podría causar que la creación de índices falle.Si
--noIndexRestorese especifica la opciónmongorestorepara,--convertLegacyIndexesse ignora la opción.
--db=<database>, -d=<database>Importante
Se desaconseja el uso de
--dblas opciones--collectiony al restaurar desde un directorio o un archivo comprimido. Para restaurar una base de datos o colección específica desde un archivo comprimido o un directorio, consulte--nsIncludela opción.Especifica la base de datos de destino en la que
mongorestoredebe restaurar los datos al restaurar desde un archivo BSON. Si la base de datos no existe,mongorestorecreará la base de datos. Por ejemplo, el siguiente ejemplo restaura la colecciónsalariesen la base de datosreporting.mongorestore --db=reporting dump/test/salaries.bson Si no
--dbespecifica,mongorestorelee el nombre de la base de datos de los archivos de datos.Alternativamente, también puede especificar la base de datos directamente
URI connection stringen. Proporcionar una cadena de conexión y, al mismo tiempo,--dbusar y especificar información contradictoria dará como resultado un error.
--dir=stringEspecifica el directorio de vaciado.
No puede especificar tanto la opción
--dircomo el argumento<path>, que también especifica el directorio de vaciado, paramongorestore.No puedes utilizar la opción
--archivecon la opción--dir.
--dropAntes de restaurar las colecciones desde la copia de seguridad volcada, elimina las colecciones de la base de datos de destino. no elimina las
--dropcolecciones que no están en la copia de seguridad.Cuando la restauración incluye la base de datos
admin,mongorestorecon--dropelimina todas las credenciales de usuario y las reemplaza con los usuarios definidos en el archivo de volcado. Por lo tanto, en sistemas conauthorizationhabilitado,mongorestoredebe poder autenticarse con un usuario existente y con un usuario definido en el archivo de volcado. Simongorestoreno puede autenticarse con un usuario definido en el archivo de volcado, el proceso de restauración fallará, dejando una base de datos vacía.Si una colección se elimina y se vuelve a crear como parte de la restauración, la colección recién creada tiene un UUID diferente a menos que se
--dropuse--preserveUUIDcon.
--dryRunEjecuta
mongorestoresin importar realmente ningún dato, devolviendo la información resumida demongorestore. Utilízalo con--verbosepara generar información de resumen más detallada.
--fixDottedHashIndexCrea todos los índices encriptados en campos punteados como índices ascendentes de campo único en la base de datos de destino.
--gssapiHostName=<hostname>Especifica el nombre de host de un servicio utilizando GSSAPI/Kerberos. Solo es necesario si el nombre de host de una máquina no coincide con el nombre de host resuelto por DNS.
Esta opción solo está disponible en MongoDB Enterprise.
--gssapiServiceName=<serviceName>Especifique el nombre del servicio usando GSSAPI/Kerberos. Solo es necesario si el servicio no usa el nombre
mongodbpredeterminado.Esta opción solo está disponible en MongoDB Enterprise.
--gzipRestaura desde archivos comprimidos o flujo de datos creado por
mongodump --gzip.Para la restauración desde un directorio de vaciado que contenga archivos comprimidos, ejecuta|
mongorestorecon la opción--gzip.Para restaurar desde un archivo comprimido, ejecute
mongorestorecon--gziplas opciones--archivey.
--host=<hostname><:port>, -h=<hostname><:port>Por defecto: localhost:27017
Especifica el nombre de host resoluble de la implementación de MongoDB. Por defecto,
mongorestoreintenta conectarse a una instancia de MongoDB que se ejecuta en el host local en el número de puerto27017.Para conectarse a un conjunto de réplicas, especifique
replSetNamey una lista semilla de miembros del conjunto, como se muestra a continuación:--host=<replSetName>/<hostname1><:port>,<hostname2><:port>,<...> Al especificar el formato de la lista del set de réplicas,
mongorestoresiempre se conecta al primario.También puedes conectarte a cualquier Nodo individual del Set de réplicas especificando el host y el puerto de solo ese Nodo:
--host=<hostname1><:port> Si utilizas IPv6 y el formato
<address>:<port>, debes encerrar la parte de una combinación de dirección y puerto entre corchetes (por ejemplo,[<address>]).Alternativamente, también puedes especificar el nombre de host directamente en el
URI connection string. El ofrecer una cadena de conexión, mientras también se utiliza--hosty ademas se especifica información conflictiva, resultará en error.
--keepIndexVersionImpide que
mongorestoreactualice el índice a la versión más reciente durante el proceso de restauración.
--maintainInsertionOrderPor defecto: false
Si se especifica,
mongorestoreinserta los documentos en el orden de su aparición en la fuente de entrada. Es decir, se mantienen tanto el orden del agrupamiento de guardado masivo como el orden de los documentos dentro de las agrupaciones.Especificar
--maintainInsertionOrdertambién habilita y--stopOnErrorestablecenumInsertionWorkersPerCollection1en.Si no se especifica,
mongorestorepuede realizar las inserciones en un orden arbitrario.
--noIndexRestoreImpide que
mongorestorerestaure y construya índices según lo especificado en la salida correspondientemongodump.
--noOptionsRestoreImpide que
mongorestoreestablezca las opciones de colección, como las especificadas por elcollModcomando de base de datos, en las colecciones restauradas.
--nsExclude=<namespace pattern>Especifica un patrón de espacio de nombres(p.
"test.myCollection""reporting.*""dept*.bar"ej.,,,) para excluir los espacios de nombres coincidentes de la restauración. En el patrón, puede usar asteriscos*como comodines. Para ver un ejemplo del patrón de comodines, consulte Restaurar colecciones con comodines.Puede especificar varias veces para excluir varios patrones de espacio de
--nsExcludenombres.Si se especifica tanto
--nsExcludecomo--nsInclude, el patrón que--nsExcludeespecifica tiene prioridad. Por ejemplo, si se especifica tanto--nsExclude="prod.*"como--nsInclude="prod.trips", no se restaurará ninguna colección del namespaceprod.
--nsFrom=<namespace pattern>Utilice para
--nsTorenombrar un espacio de nombres durante la operación de restauración. especifica la colección en--nsFrom--nsToel archivo de volcado, mientras que especifica el nombre que se debe usar en la base de datos restaurada.--nsFromacepta un patrón de espacio de nombres como argumento. El patrón de espacio de nombres permite--nsFromque haga referencia a cualquier espacio de nombres que coincida con el patrón especificado.mongorestorecoincide con la ocurrencia válida más pequeña del patrón de espacio de nombres.Para reemplazos simples, usa asteriscos (
*) como comodines. Escapa todos los asteriscos y barras invertidas literales con una barra invertida. Los reemplazos corresponden linealmente a las coincidencias: cada asterisco en--nsFromdebe corresponder a un asterisco en--nsTo, y el primer asterisco en--nsFromcoincide con el primer asterisco ennsTo.Para reemplazos más complejos, se utilizan signos de dólar para delimitar una variable "comodín" que se usará en el reemplazo. Cambiar namespaces de la colección durante la restauración ofrece un ejemplo de reemplazos complejos con comodines delimitados por signos de dólar.
A diferencia de los reemplazos con asteriscos, los reemplazos con comodines delimitados por el signo de dólar no necesitan ser lineales.
--nsInclude=<namespace pattern>Especifica un patrón de espacio de nombres(p.
"test.myCollection""reporting.*""dept*.bar"ej.,,,) para restaurar solo los espacios de nombres que coincidan con dicho patrón. En el patrón, puede usar asteriscos*como comodines. Para ver un ejemplo del patrón con comodines, consulte Restaurar colecciones con comodines.Puede especificar varias veces para incluir varios patrones de espacio de
--nsIncludenombres.Si el directorio o archivo de origen (es decir, el directorio o archivo desde el que estás restaurando los datos) no contiene archivos de datos que coincidan con el patrón de namespace, no se restaurarán datos.
Para los nombres de colección que contienen caracteres no ASCII,
mongodumpgenera los nombres de archivo correspondientes con nombres codificados por porcentaje. Sin embargo, para restaurar estas colecciones, no utilices los nombres codificados. En su lugar, utiliza el namespace con caracteres no ASCII.Por ejemplo, si el directorio de vaciado contiene
dump/test/caf%C3%A9s.bson, especifique--nsInclude "test.cafés".Si se especifica tanto
--nsExcludecomo--nsInclude, el patrón que--nsExcludeespecifica tiene prioridad. Por ejemplo, si se especifica tanto--nsExclude="prod.*"como--nsInclude="prod.trips", no se restaurará ninguna colección del namespaceprod.
--nsTo=<namespace pattern>Utilice para
--nsFromrenombrar un espacio de nombres durante la operación de restauración. especifica el nuevo nombre de la colección que--nsTo--nsFromse utilizará en la base de datos restaurada, mientras que especifica el nombre en el archivo de volcado.--nsToacepta un patrón de espacio de nombres como argumento. El patrón de espacio de nombres permite--nsToque haga referencia a cualquier espacio de nombres que coincida con el patrón especificado.mongorestorecoincide con la ocurrencia válida más pequeña del patrón de espacio de nombres.Para reemplazos simples, usa asteriscos (
*) como comodines. Escapa todos los asteriscos y barras invertidas literales con una barra invertida. Los reemplazos corresponden linealmente a las coincidencias: cada asterisco en--nsFromdebe corresponder a un asterisco en--nsTo, y el primer asterisco en--nsFromcoincide con el primer asterisco ennsTo.Para reemplazos más complejos, se utilizan signos de dólar para delimitar una variable "comodín" que se usará en el reemplazo. Cambiar namespaces de la colección durante la restauración ofrece un ejemplo de reemplazos complejos con comodines delimitados por signos de dólar.
A diferencia de los reemplazos con asteriscos, los reemplazos con comodines delimitados por el signo de dólar no necesitan ser lineales.
--numInsertionWorkersPerCollection=<int>Por defecto: 1
Especifica el número de trabajadores de inserción que deben ejecutarse concurrentemente por colección.
Para grandes importaciones, aumentar el número de trabajadores de inserción puede incrementar la velocidad de la importación.
--numParallelCollections=<int>, -j=<int>Por defecto: 4
El número de colecciones que
mongorestoredebería restaurar en paralelo.Si especifica
-jal restaurar una sola colección, se-jasigna a la opción en--numInsertionWorkersPerCollectionlugar--numParallelCollectionsde.
--objcheckObsoleto desde la versión 9.0.
Obliga
mongorestorea a validar todas las solicitudes de los clientes al recibirlas para garantizar que nunca inserten documentos no válidos en la base de datos. Para objetos con un alto grado de anidamiento de subdocumentos, puede tener un pequeño impacto en el--objcheckrendimiento.A partir de MongoDB 9.0, esta opción no tiene ningún efecto en el comportamiento del servidor. El servidor siempre valida los documentos BSON.
--oplogFile=<path>Especifica la ruta al archivo oplog que contiene los datos oplog para la restauración. Úselo
--oplogReplaycon.Si especifica y hay
--oplogFileunoplog.bsonarchivo en el nivel superior del directorio de volcado,mongorestoredevuelve un error.Advertencia
Utiliza
oplogFilecon precaución: especificar manualmente las entradas del oplog que se deben aplicar podría causar corrupción e inconsistencias en los datos restaurados.
--oplogLimit=<timestamp>Impide
mongorestoreque aplique entradas de oplog con una marca de tiempo posterior o igual<timestamp>a. Especifique<timestamp>los valores en el<time_t>:<ordinal>formato, donde<time_t>son los segundos transcurridos desde la época UNIX y<ordinal>representa un contador de operaciones en el oplog que ocurrieron en el segundo especificado.Advertencia
Utiliza
oplogLimitcon precaución: especificar manualmente las entradas del oplog que se deben aplicar podría causar corrupción e inconsistencias en los datos restaurados.Debe utilizar junto
--oplogLimit--oplogReplaycon la opción.
--oplogReplayDespués de restaurar el volcado de la base de datos, reproduce las entradas del oplog desde un
oplog.bsonarchivo.Para aplicar las entradas del oplog del archivo
oplog.bsonen la restauración, se utilizamongorestore --oplogReplay. Es posible usarmongodump --oplogjunto conmongorestore --oplogReplaypara garantizar que los datos estén actualizados y contengan todo lo que se guardó durante la operación de vaciado.mongorestorebusca cualquier fuente válida para el archivo BSON en las siguientes ubicaciones:El nivel superior del directorio de vaciado, como en el caso de un vaciado creado con
mongodump --oplog.La ruta especificada
--oplogFilepor.<dump-directory>/local/oplog.rs.bson, como en el caso de un volcado de laoplog.rscolección en lalocalbase de datos en unmongodque es miembro de un conjunto de réplicas.
Si hay un
oplog.bsonarchivo en el nivel superior del directorio de volcado y una ruta especificada--oplogFilepor,mongorestoredevuelve un error.Si hay un archivo
oplog.bsonen el nivel superior del directorio de vaciado,mongorestorerestaura ese archivo como el oplog. Si también hay archivos bson en el directoriodump/local,mongorestorelos restaura como colecciones normales.Si especifica un archivo oplog
--oplogFileusando,mongorestorerestaura ese archivo como oplog. Si también hay archivos bson en eldump/localdirectorio,mongorestorelos restaura como colecciones normales.El siguiente mensaje en la salida de reproducción del oplog muestra el número de inserciones antes de la reproducción del oplog. No se incluyen las inserciones realizadas durante la reproducción.
0 document(s) restored successfully. 0 document(s) failed to restore. Para ver un ejemplo
--oplogReplayde, consulte Usar un archivo Oplog para restaurar datos.Nota
Al usar
mongorestorecon para restaurar un conjunto de réplicas,--oplogReplaydebe restaurar un volcado completo de un miembro del conjuntomongodump --oplogde réplicas creado con.mongorestorecon--oplogReplayfalla si usa alguna de las siguientes opciones para limitar los datos que se van a restaurar:Advertencia
mongorestoreno se puede reproducir un rango de oplog que abarque una conversión de formato de serie de tiempo. El servidor realiza esta conversión cuando cambia la compatibilidad de características entre versiones (FCV) entre MongoDB 8.x y MongoDB 9.0. Para aprender a restaurar a través de una conversión, consulte Reproducción de Oplog a través de una conversión de formato de serie de tiempo.
--password=<password>, -p=<password>Especifica una contraseña para autenticarse en una base de datos MongoDB que utiliza autenticación. Úsela junto con las opciones
--username--authenticationDatabasey.Para solicitar la contraseña al usuario, pase la
--usernameopción sin o especifique--password--passworduna--password=""cadena vacía como valor, como en.Alternativamente, también puedes especificar la contraseña directamente en la
URI connection string. El ofrecer una cadena de conexión, mientras también se utiliza--passwordy ademas se especifica información conflictiva, resultará en error.Si se conecta a un clúster de MongoDB Atlas
MONGODB-AWSauthentication mechanismusando, puede especificar su clave de acceso secreta de AWS en:este campo,
connection stringel, ola variable de entorno
AWS_SECRET_ACCESS_KEY.
Consulta Conectar a un clúster de MongoDB Atlas usando credenciales de AWS IAM para obtener un ejemplo de cada uno.
Advertencia
En algunos sistemas, una contraseña proporcionada directamente mediante la opción
--passwordpuede ser visible para programas de estado del sistema, comops, que pueden ser invocados por otros usuarios. Considera en cambio:omitiendo la opción
--passwordpara recibir un aviso interactivo de contraseña, outilizando la opción
--configpara especificar un archivo de configuración que contenga la contraseña.
<path>La ruta del directorio o el nombre del archivo BSON desde el cual restaurar los datos.
No puede especificar tanto el argumento
<path>como la opción--dir, que también especifica el directorio de vaciado, paramongorestore.
--port=<port>Por defecto: 27017
Especifica el puerto TCP en el que la instancia de MongoDB escucha las conexiones de los clientes.
Alternativamente, también puedes especificar el puerto directamente en el
URI connection string. Proporcionar una cadena de conexión y también utilizar--porty especificar información conflictiva resultará en un error.
--preserveUUIDLas colecciones restauradas utilizan el UUID de los datos de la restauración en lugar de crear un nuevo UUID para las colecciones que se descartan y se recrean como parte de la restauración.
Para usar, también
--preserveUUID--dropdebe incluir la opción.
--quietEjecuta
mongorestoreen modo silencioso que intenta limitar la cantidad de salida.Esta opción suprime:
errors
Salida de los comandos de la base de datos
Actividad de replicación
eventos de aceptación de conexión
eventos de cierre de conexión
--restoreDbUsersAndRolesRestaura las definiciones de usuario y rol para la base de datos dada. Consulta la colección system.roles y la colección system.users para obtener más información.
Nota
Solo puede usar
--restoreDbUsersAndRolesen un vaciado de base de datos que se haya creado con la opción--dumpDbUsersAndRoles.Restaurar la
adminbase de datos especificando--db adminrestaura automáticamente todos los usuarios y roles. No se puede usar--restoreDbUsersAndRolesen laadminbase de datos, e intentar hacerlo genera un error.
--sslPermite la conexión a un
mongodo que tenga habilitado el soportemongosTLS/SSL.Alternativamente, también puedes configurar el soporte TLS/SSL directamente en el
URI connection string. Proveer una cadena de conexión, mientras también se utiliza--ssly se especifica información conflictiva, resultará en error.Para obtener más información sobre TLS/SSL y MongoDB, consulta Configurar mongod y mongos para TLS/SSL y Configuración de TLS/SSL para clientes.
--sslAllowInvalidCertificatesOmite las comprobaciones de validación de los certificados del servidor y permite el uso de certificados no válidos. Al usar la
allowInvalidCertificatesconfiguración, MongoDB registra como advertencia el uso del certificado no válido.Advertencia
Aunque está disponible, evita utilizar la opción
--sslAllowInvalidCertificatesen lo posible. Si necesitas usar--sslAllowInvalidCertificates, utiliza únicamente la opción en los sistemas donde no sea posible la intrusión.Conectarse a una instancia
mongodo sin validar los certificados del servidor supone un riesgo potencial para la seguridad. Si solo necesita deshabilitar la validación del nombre de host en los certificados TLS/SSL,mongos--sslAllowInvalidHostnamesconsulte.Alternativamente, también puede desactivar la validación del certificado directamente en el
URI connection string. Proporcionar una cadena de conexión mientras también se utiliza--sslAllowInvalidCertificatesy especificar información contradictoria dará lugar a un error.Para obtener más información sobre TLS/SSL y MongoDB, consulta Configurar mongod y mongos para TLS/SSL y Configuración de TLS/SSL para clientes.
--sslAllowInvalidHostnamesDesactiva la validación de los nombres de host en los certificados TLS/SSL. Permite a
mongorestoreconectarse a instancias de MongoDB incluso si el nombre de host en sus certificados no coincide con el nombre de host especificado.Como alternativa, también puedes desactivar la validación del nombre de host directamente en la
URI connection string. El ofrecer una cadena de conexión, mientras también se utiliza--sslAllowInvalidHostnamesy ademas se especifica información conflictiva, resultará en error.Para obtener más información sobre TLS/SSL y MongoDB, consulta Configurar mongod y mongos para TLS/SSL y Configuración de TLS/SSL para clientes.
--sslCAFile=<filename>Especifica el archivo
.pemque contiene la cadena de certificados raíz de la Autoridad Certificadora. Especifica el nombre del archivo.pemcon rutas relativas o absolutas.Alternativamente, también puedes especificar el archivo
.pemdirectamente en laURI connection string. Proveer una cadena de conexión, mientras también se utiliza--sslCAFiley se especifica información conflictiva, dará como resultado un error.Para obtener más información sobre TLS/SSL y MongoDB, consulta Configurar mongod y mongos para TLS/SSL y Configuración de TLS/SSL para clientes.
--sslCRLFile=<filename>Especifica el archivo
.pemque contiene la Lista de revocación de certificados. Especifica el nombre del archivo.pemcon rutas relativas o absolutas.Para obtener más información sobre TLS/SSL y MongoDB, consulta Configurar mongod y mongos para TLS/SSL y Configuración de TLS/SSL para clientes.
--sslPEMKeyFile=<filename>Especifica el archivo
.pemque contiene tanto el certificado TLS/SSL como la clave. Especifica el nombre del archivo.pemcon rutas relativas o absolutas.Esta opción es necesaria cuando se utiliza la opción
--sslpara conectarse a unmongodomongosque tieneCAFilehabilitado sinallowConnectionsWithoutCertificates.Alternativamente, también puedes especificar el archivo
.pemdirectamente en laURI connection string. Proveer una cadena de conexión, mientras también se utiliza--sslPEMKeyFiley se especifica información conflictiva, dará como resultado un error.Para obtener más información sobre TLS/SSL y MongoDB, consulta Configurar mongod y mongos para TLS/SSL y Configuración de TLS/SSL para clientes.
--sslPEMKeyPassword=<value>Especifica la contraseña para descifrar el archivo de clave de certificado (es
--sslPEMKeyFiledecir,). Utilice la opción solo si el archivo de clave de certificado está cifrado. En todos los casos, la--sslPEMKeyPasswordopciónmongorestoreocultará la contraseña en todos los registros e informes.Si la clave privada del archivo PEM está cifrada y no especifica la opción, se
--sslPEMKeyPasswordlemongorestorepedirá que introduzca una contraseña en la opción.Consulte Contraseña del certificado TLS/SSL.Alternativamente, también puedes especificar la contraseña directamente en la
URI connection string. El ofrecer una cadena de conexión, mientras también se utiliza--sslPEMKeyPasswordy ademas se especifica información conflictiva, resultará en error.Para obtener más información sobre TLS/SSL y MongoDB, consulta Configurar mongod y mongos para TLS/SSL y Configuración de TLS/SSL para clientes.
Advertencia
En algunos sistemas, una contraseña proporcionada directamente mediante la opción
--sslPEMKeyPasswordpuede ser visible para los programas de estado del sistema, comops, que pueden ser invocados por otros usuarios. En su lugar, considera usar la opción--configpara especificar un archivo de configuración que contenga la contraseña.
--stopOnErrorObliga a
mongorestorea detener la restauración cuando se encuentra con un error.Por defecto,
mongorestorecontinúa cuando encuentra errores de validación de claves y documentos duplicados. Para garantizar que el programa se detenga ante estos errores,--stopOnErrorespecifique.
--uri=<connectionString>Especifica la cadena de conexión URI resoluble de la implementación de MongoDB, entre comillas:
--uri="mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]" A partir de la versión
100.0mongorestorede, la cadena de conexión puede proporcionarse alternativamente como un parámetro posicional, sin utilizar la--uriopción:mongorestore mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]] Como parámetro de posicionamiento, la cadena de conexión puede especificarse en cualquier punto de la línea de comandos, siempre que comience con
mongodb://omongodb+srv://. Por ejemplo:mongorestore --username joe --password secret1 mongodb://mongodb0.example.com:27017 --ssl Solo se puede proporcionar una cadena de conexión. Intentar incluir más de una, ya sea usando la
--uriopción o como argumento posicional, generará un error.Para obtener información sobre los componentes de la cadena de conexión, consulta la documentación del formato URI de la cadena de conexión.
Nota
Algunos componentes en el
connection stringpueden especificarse alternativamente utilizando sus propias opciones explícitas de línea de comandos, como--usernamey--password. El proveer una cadena de conexión, mientras también se utiliza una opción explícita y se especifica información conflictiva, resultará en error.Nota
Si utiliza
mongorestoreen Ubuntu,18.04 es posible que experimente uncannot unmarshal DNSmensaje de error al usar cadenas de conexión SRV (en elmongodb+srv://formato) con la opción.--uriEn ese caso, utilice una de las siguientes opciones:la opción
--uricon una cadena de conexión que no sea SRV (en elmongodb://formato)la opción
--hostpara especificar el host al cual conectarse directamente
Advertencia
En algunos sistemas, una contraseña proporcionada en una cadena de conexión con la opción
--uripuede ser visible para programas de estado del sistema comopsque otros usuarios puedan invocar. Considera en su lugar:omitir la contraseña en la cadena de conexión para recibir un aviso interactivo de contraseña, o
utilizando la opción
--configpara especificar un archivo de configuración que contenga la contraseña.
--username=<username>, -u=<username>Especifica un nombre de usuario para autenticarse en una base de datos MongoDB que utiliza autenticación. Úselo junto con las opciones
--password--authenticationDatabasey.Alternativamente, también puede especificar el nombre de usuario directamente en el
URI connection string. Proporcionar una cadena de conexión mientras también se utiliza--usernamey especificar información conflictiva resultará en un error.Si se conecta a un clúster de MongoDB Atlas
MONGODB-AWSauthentication mechanismutilizando, puede especificar su ID de clave de acceso de AWS en:este campo,
connection stringel, ola variable de entorno
AWS_ACCESS_KEY_ID.
Consulta Conectar a un clúster de MongoDB Atlas usando credenciales de AWS IAM para obtener un ejemplo de cada uno.
--verbose, -vAumenta la cantidad de reportes internos devueltos en la salida estándar o en las entradas de registro. Aumenta el nivel de verbosidad con la forma
-vincluyendo la opción varias veces (por ejemplo,-vvvvv.)
--writeConcern=<document>Por defecto: mayoría
Especifica la preocupación de escritura para cada operación de escritura que
mongorestorerealiza.Especifica el nivel de confirmación de escritura (write concern) como un documento con opciones w:
--writeConcern="{w:'majority'}" Si la preocupación de escritura también se incluye en el,
--uri connection string--writeConcernla línea de comandos anula la preocupación de escritura especificada en la cadena URI.