Esta documentação é para a versão 100.13.0 de mongorestore.
Definição
O programa mongorestore carrega dados de um despejo de banco de dados binário criado pelo mongodump ou a entrada padrão em uma instância mongod, ou mongos. A mongorestore é instalada quando você instala MongoDB Database Tools.
Você pode usar o MongoDB Database Tools para migrar de uma implantação auto-hospedada para o MongoDB Atlas. MongoDB Atlas é o serviço totalmente gerenciado para implantações do MongoDB na nuvem. Para saber mais, consulte Seed com mongorestore.
Para saber todas as maneiras de migrar para o MongoDB Atlas, consulte Migrar ou importar dados.
Você pode restaurar os arquivos BSON gerados do mongodump para implantações do MongoDB que estejam executando a mesma versão principal ou versão de compatibilidade de recursos da implantação de origem.
mongorestore tem os seguintes comportamentos e limitações:
Você deve executar
mongorestorena linha de comando do sistema, não no MongoDB Shell.O MongoDB não consegue executar simultaneamente vários programas
mongorestorepara a mesma coleção.Você não pode usar
mongorestorecom uma collection que usa Queryable Encryption.
Sintaxe
Use a seguinte sintaxe de comando ao executar mongorestore:
mongorestore <options> <connection-string> <directory or file to restore>
Consulte Opções para saber quais opções você pode usar ao executar mongorestore.
Quando você executa mongorestore sem argumentos, a configuração padrão é restaurar dados de um diretório local ./dump para uma instância mongod local em execução na porta 27017:
mongorestore
Você também pode especificar um diretório dump em um caminho diferente. Por exemplo, o seguinte comando restaura dados de um diretório em ./downloads/dump para um cluster do Atlas especificado por uma string de conexão:
mongorestore --uri="<my-connection-string>" ./downloads/dump
À medida que o mongorestore é restaurado a partir do diretório fornecido, ele cria o banco de dados e as coleções, conforme necessário, e loga seu progresso:
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.
Você também pode restaurar uma coleção ou coleções específicas a partir do diretório dump. Por exemplo, a seguinte operação restaura a coleção test.purchaseorders de arquivos de dados correspondentes no diretório dump:
mongorestore --nsInclude=test.purchaseorders ./dump
Se o diretório dump não contiver o arquivo de dados correspondente para o namespace especificado, a mongorestore não restaurará nenhum dado. Por exemplo, o seguinte comando especifica um namespace da coleção que não tem dados correspondentes no diretório dump:
mongorestore --nsInclude=foo.bar dump/
mongorestore gera as seguintes mensagens:
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.
Para obter mais exemplos da mongorestore, consulte Exemplos de mongorestore.
Opções
Esta seção inclui informações sobre todas as opções disponíveis para mongorestore.
--archive=<file>Restaura a partir de um arquivo criado por
mongodump --archive. Amongorestorerestaura a partir do arquivo especificado ou, se você não especificar um arquivo, a partir da entrada padrão (stdin).Para restaurar de um arquivo morto, execute o
mongorestorecom a opção--archivee o nome do arquivo morto.Para restaurar a partir da entrada padrão, execute
mongorestorecom a opção--archivee omita o nome do arquivo.O exemplo a seguir mostra como restaurar a partir da entrada padrão:
mongodump --archive | mongorestore --archive Esse pipeline de comando executa primeiro
mongodumpcom o sinalizador--archive, que imprime sua saída parastdoutou saída padrão. Em seguida, a entrada é piped para a entrada padrão domongorestoreusando o operador de pipe|.Importante
Não é possível usar a opção
--archivecom a opção--dir, que especifica o diretório de despejo.As opções
--dbe--collectionsão preteridas ao restaurar de um arquivo morto. Para restaurar um banco de dados ou collection específica, use--nsInclude.Se você usar a opção
--archivecom o parâmetro<path>, amongorestoreignora<path>.
--authenticationDatabase=<dbname>Especifica o banco de dados de autenticação onde o
--usernameespecificado foi criado. Utilize em conjunto com as opções--usernamee--password.Para obter mais informações sobre bancos de dados de autenticação, consulte Banco de dados de autenticação.
Se estiver usando o GSSAPI (Kerberos), PLAIN (LDAP SASL) ou
MONGODB-AWSauthentication mechanisms, você deverá definir--authenticationDatabasecomo$external.Como alternativa, você também pode especificar o banco de dados de autenticação diretamente no
URI connection string. Fornecer uma string de conexão ao mesmo tempo em que usa--authenticationDatabasee especificar informações conflitantes resultará em um erro.
--authenticationMechanism=<name>Padrão: SCRAM-SHA-1
Especifica o mecanismo de autenticação que a instância do
mongorestoreutiliza para autenticar nomongodoumongos.Alterado na versão 100.1.0: A partir da versão
100.1.0, omongorestoreadiciona suporte ao mecanismo de autenticaçãoMONGODB-AWSao se conectar a um cluster do MongoDB Atlas.ValorDescriçãoRFC 5802 mecanismo de autenticação de resposta de desafio salgado padrão usando a função de hash SHA-1.
RFC 7677 mecanismo de autenticação de resposta de desafio salgado padrão usando a função de hash SHA-256.
Exige featureCompatibilityVersion definido para
4.0.Autenticação de certificado TLS/SSL do MongoDB.
MONGODB-AWSAutenticação externa usando credenciais da AWS IAM para uso na conexão com um cluster do MongoDB Atlas. Consulte Conectar-se a um cluster do MongoDB Atlas usando Credenciais AWS IAM.
Novidades na versão 100.1.0.
GSSAPI (Kerberos)
Autenticação externa usando Kerberos. Esse mecanismo está disponível somente no MongoDB Enterprise.
PLAIN (LDAP SASL)
Autenticação externa usando LDAP. Você também pode utilizar o
PLAINpara autenticar usuários do banco de dados.PLAINtransmite senhas em texto simples. Esse mecanismo está disponível apenas no MongoDB Enterprise.Alternativamente, você também pode especificar o mecanismo de autenticação diretamente no
URI connection string. Fornecer uma string de conexão ao mesmo tempo em que usa--authenticationMechanisme especificar informações conflitantes resultará em um erro.
--awsSessionToken=<AWS Session Token>Se você se conectar a um cluster do MongoDB Atlas usando o
MONGODB-AWSauthentication mechanisme usando tokens de sessão além do ID da chave de acesso Amazon Web Services e da chave de acesso do secret do Kubernetes, você poderá especificar o token da sessão da Amazon Web Services em:esse campo,
o parâmetro
AWS_SESSION_TOKENauthMechanismPropertiespara oconnection string, oua variável de ambiente
AWS_SESSION_TOKEN.
Consulte Conecte-se a um cluster do MongoDB Atlas usando as credenciais AWS IAM para ver um exemplo de cada um.
Válido somente ao utilizar o
MONGODB-AWSauthentication mechanism.
--bypassDocumentValidationPermite que
mongorestoreignore a validação do documento durante a operação. Isso permite inserir documentos que não atendam aos requisitos de validação.
--collection=<collection>, -c=<collection>Importante
O uso das opções
--dbe--collectioné preterido ao restaurar a partir de um diretório ou arquivo compactado. Para restaurar um banco de dados específico ou coleção de um arquivo ou um diretório, consulte--nsInclude.Especifica o nome da collection de destino do
mongorestorepara restaurar dados ao realizar restaurações a partir de um arquivo BSON. Se você não especificar--collection,mongorestoreusará o nome da coleção do nome do arquivo de entrada. Se o arquivo de entrada tiver uma extensão, o MongoDB a omitirá do nome da collection.mongorestore --db=reporting --collection=employeesalaries dump/test/salaries.bson
--compressors=<string>Especifica o algoritmo de compactação que
mongodumputiliza para a comunicação de rede entre o clientemongorestoree o servidor MongoDB. Você pode usar um ou mais desses valores para a opção--compressors:snappyzlibzstd
Se você especificar vários algoritmos de compressão, o
mongorestoreutilizará o primeiro na lista suportado pelo seu sistema do MongoDB .Para obter mais informações sobre compressores, consulte a documentação de compactação de rede do driver Go.
--config=<filename>Novidades na versão 100.3.0.
Especifica o caminho completo para um arquivo de configuração YAML que contém valores confidenciais para as opções de
mongorestoreseguintes:Esta é a maneira recomendada de especificar uma senha para
mongorestore, além de especificá-la por meio de um prompt de senha. Você pode usar qualquer combinação dos argumentos no arquivo.O arquivo de configuração recebe o seguinte formulário:
password: <password> uri: mongodb://mongodb0.example.com:27017 sslPEMKeyPassword: <password> Se você especificar a opção
passwordsem especificaruri, poderá definir os outros componentes da string de conexão usando as opções de linha de comandomongorestore, como--usernamee--host.Certifique-se de proteger este arquivo com permissões de sistema de arquivos apropriadas.
Importante
Ao usar a opção
--config, tenha em mente as seguintes limitações e comportamentos:Se você fornecer o campo
passworde uma string de conexão no campouricom uma senha conflitante, amongorestoreemitirá um erro.Se você especificar um arquivo de configuração com
--confige também usar as opções de linha de comando--password,--uriou--sslPEMKeyPasswordmongorestore, a opção de linha de comando substituirá a opção de arquivo de configuração correspondente.
--convertLegacyIndexesNovidades na versão 100.0.0.
Remove quaisquer opções de índice inválidas especificadas na saída
mongodumpcorrespondente e reescreve quaisquer valores de chave de índice herdados para usar valores válidos.Opções de índice inválidas são quaisquer opções especificadas para um índice que não estejam listadas como um campo válido para o comando
createIndexes. Por exemplo,nameecollationsão válidos, mas umcustom_fieldarbitrário não é. Com--convertLegacyIndexesespecificado, todas as opções de índice inválidas encontradas são descartadas.Os valores da chave de índice herdados são quaisquer valores para o tipo de índice que não são mais compatíveis. Por exemplo,
1e-1são valores de chave de índice válidos, mas0ou uma string vazia são valores herdados. Com--convertLegacyIndexesespecificado, quaisquer valores da chave do índice herdados que são encontrados, são reescritos como1. Os valores de string não vazios não são substituídos.
Sem a opção
--convertLegacyIndexesespecificada, a presença de opções de índice inválidas ou valores de chave de índice legados pode fazer com que a compilação do índice falhe.Se a opção
--noIndexRestorefor especificada paramongorestore, a opção--convertLegacyIndexesserá ignorada.
--db=<database>, -d=<database>Importante
O uso das opções
--dbe--collectioné preterido ao restaurar a partir de um diretório ou arquivo compactado. Para restaurar um banco de dados específico ou coleção de um arquivo ou um diretório, consulte--nsInclude.Especifica o banco de dados de destino para
mongorestorerestaurar dados ao restaurar a partir de um arquivo BSON. Se o banco de dados não existir, omongorestorecriará o banco de dados. Por exemplo, o seguinte exemplo restaura a coleçãosalariesno banco de dadosreporting.mongorestore --db=reporting dump/test/salaries.bson Se você não especificar
--db, omongorestorelerá o nome do banco de dados a partir dos arquivos de dados.Alternativamente, você também pode especificar o banco de dados diretamente no
URI connection string. Fornecer uma string de conexão ao mesmo tempo em que usa--dbe especificar informações conflitantes resultará em um erro.
--dir=stringEspecifica o diretório de despejo.
Não é possível especificar a opção
--dire o argumento<path>, que também especifica o diretório de despejo, paramongorestore.Você não pode utilizar a opção
--archivecom a opção--dir.
--dropAntes de restaurar as coleções a partir do backup despejado, elimine as coleções do banco de dados de destino.
--dropnão descarta coleções que não estão no backup.Quando a restauração inclui o banco de dados
admin,mongorestorecom--dropremove todas as credenciais de usuário e as substitui pelos usuários definidos no arquivo de despejo. Portanto, em sistemas comauthorizationhabilitado, omongorestoredeve ser capaz de autenticar para um usuário existente e para um usuário definido no arquivo de despejo. Se omongorestorenão puder autenticar para um usuário definido no arquivo de despejo, o processo de restauração falhará, deixando um banco de dados vazio.Se uma coleção for descartada e recriada como parte da restauração, a coleção recém-criada terá um UUID diferente a menos que o
--dropseja utilizado com--preserveUUID.
--dryRunExecuta o
mongorestoresem realmente importar quaisquer dados, devolvendo as informações resumidas domongorestore. Utilize com--verbosepara produzir informações resumidas mais detalhadas.
--fixDottedHashIndexCria todos os índices com hash em campos pontilhados como índices ascendentes de campo único no banco de dados de destino.
--gssapiHostName=<hostname>Especifique o nome de host de um serviço utilizando GSSAPI/Kerberos. Somente necessário se o nome de host de uma máquina não corresponder ao nome de host resolvido pelo DNS.
Esta opção está disponível apenas no MongoDB Enterprise.
--gssapiServiceName=<serviceName>Especifique o nome do serviço utilizando GSSAPI/Kerberos. Obrigatório apenas se o serviço não usar o nome padrão
mongodb.Esta opção está disponível apenas no MongoDB Enterprise.
--gzipRestaura de arquivos compactados ou fluxo de dados criados por
mongodump --gzip.Para restaurar a partir de um diretório de despejo que contém arquivos compactados, execute
mongorestorecom a opção--gzip.Para restaurar a partir de um arquivo de arquivo compactado, execute o
mongorestorecom as opções--gzipe--archive.
--host=<hostname><:port>, -h=<hostname><:port>Padrão: localhost:27017
Especifica o nome de host resolvível do sistema MongoDB. Por padrão,
mongorestoretenta se conectar a uma instância do MongoDB em execução no host local na porta número27017.Para se conectar a um conjunto de réplicas, especifique o
replSetNamee uma lista de sementes de nós do conjunto, como a seguir:--host=<replSetName>/<hostname1><:port>,<hostname2><:port>,<...> Ao definir o formato da lista de conjuntos de réplicas,
mongorestoresempre se conecta ao primário.Você também pode se conectar a qualquer membro da réplica definida especificando o host e a porta de apenas esse membro:
--host=<hostname1><:port> Se você usar IPv6 e o formato
<address>:<port>, deverá incluir a parte de uma combinação de endereço e porta entre colchetes (por exemplo,[<address>]).Outra opção é especificar o nome do host diretamente no
URI connection string. Fornecer uma string de conexão ao mesmo tempo em que usa--hoste especificar informações conflitantes resultará em um erro.
--keepIndexVersionImpede que o
mongorestoreatualize o índice para a versão mais recente durante o processo de restauração.
--maintainInsertionOrderPadrão: false
Se especificado, o
mongorestoreinsere os documentos na ordem de sua aparência na origem de entrada. Ou seja, tanto a ordem do lote de gravação em massa quanto a ordem do documento dentro dos lotes são mantidas.A especificação
--maintainInsertionOrdertambém permite--stopOnErrore definenumInsertionWorkersPerCollectionpara 1.Se não especificado, o
mongorestorepoderá executar as inserções em uma ordem arbitrária.
--noIndexRestoreImpede que
mongorestorerestaure e crie índices conforme especificado na saídamongodumpcorrespondente.
--noOptionsRestoreImpede que
mongorestoredefina as opções de collection, como as especificadas pelocollModcomando de banco de dados , em collections restauradas.
--nsExclude=<namespace pattern>Especifica um padrão de namespace (por exemplo
"test.myCollection","reporting.*","dept*.bar") para excluir os namespaces correspondentes da restauração. No padrão, você pode utilizar asteriscos*como curingas. Para obter um exemplo do padrão curinga, consulte Restaurar collections usando curingas.Você pode especificar
--nsExcludevárias vezes para excluir vários padrões de namespace.Se você especificar ambos
--nsExcludee--nsInclude, o padrão que o--nsExcludeespecifica terá precedência. Por exemplo, se você especificar--nsExclude="prod.*"e--nsInclude="prod.trips", nenhuma coleção do namespaceprodserá restaurada.
--nsFrom=<namespace pattern>Utilize com
--nsTopara renomear um namespace durante a operação de restauração. O--nsFromespecifica a collection no arquivo de despejo, enquanto o--nsToespecifica o nome que deve ser utilizado no banco de dados restaurado.--nsFromaceita um padrão de namespace como argumento. O padrão de namespace permite que--nsFromreferencie qualquer namespace que corresponda ao padrão especificado.mongorestorecorresponde à menor ocorrência válida do padrão de namespace.Para substituições simples, use asteriscos (
*) como curingas. Evite todos os asteriscos literais e barras invertidas com uma barra invertida. As substituições correspondem linearmente às correspondências: cada asterisco em--nsFromdeve corresponder a um asterisco em--nsTo, e o primeiro asterisco em--nsFromcorresponde ao primeiro asterisco emnsTo.Para substituições mais complexas, use cifrões para delimitar uma variável "curinga" a ser usada na substituição. Alterar Namespaces de Coleção Durante a Restauração fornece um exemplo de substituições complexas com curingas delimitados por cifrão.
Ao contrário das substituições com asteriscos, as substituições com curingas delimitados por cifrões não precisam ser lineares.
--nsInclude=<namespace pattern>Especifica um padrão de namespace (por exemplo
"test.myCollection","reporting.*","dept*.bar") para restaurar apenas os namespaces que correspondem ao padrão. No padrão, você pode utilizar asteriscos*como curingas. Para obter um exemplo do padrão curinga, consulte Restaurar collections usando curingas.Você pode especificar
--nsIncludevárias vezes para incluir múltiplos padrões de namespace.Se o diretório ou arquivo de origem (ou seja, o diretório/arquivo do qual você está restaurando os dados) não contiver arquivos de dados que correspondam ao padrão de namespace, nenhum dado será restaurado.
Para nomes de coleção que contêm caracteres não-ascii, o
mongodumpgera os nomes de arquivo correspondentes com nomes codificados por porcentagem. No entanto, para restaurar essas coleções, não use os nomes codificados. Em vez disso, use o namespace com caracteres não-ascii.Por exemplo, se o diretório de despejo contiver
dump/test/caf%C3%A9s.bson, especifique--nsInclude "test.cafés".Se você especificar ambos
--nsExcludee--nsInclude, o padrão que o--nsExcludeespecifica terá precedência. Por exemplo, se você especificar--nsExclude="prod.*"e--nsInclude="prod.trips", nenhuma coleção do namespaceprodserá restaurada.
--nsTo=<namespace pattern>Utilize com
--nsFrompara renomear um namespace durante a operação de restauração.--nsToespecifica o novo nome da coleção a ser usado no banco de dados restaurado, enquanto--nsFromespecifica o nome no arquivo de despejo.--nsToaceita um padrão de namespace como argumento. O padrão de namespace permite que--nsToreferencie qualquer namespace que corresponda ao padrão especificado.mongorestorecorresponde à menor ocorrência válida do padrão de namespace.Para substituições simples, use asteriscos (
*) como curingas. Evite todos os asteriscos literais e barras invertidas com uma barra invertida. As substituições correspondem linearmente às correspondências: cada asterisco em--nsFromdeve corresponder a um asterisco em--nsTo, e o primeiro asterisco em--nsFromcorresponde ao primeiro asterisco emnsTo.Para substituições mais complexas, use cifrões para delimitar uma variável "curinga" a ser usada na substituição. Alterar Namespaces de Coleção Durante a Restauração fornece um exemplo de substituições complexas com curingas delimitados por cifrão.
Ao contrário das substituições com asteriscos, as substituições com curingas delimitados por cifrões não precisam ser lineares.
--numInsertionWorkersPerCollection=<int>Padrão: 1
Especifica o número de trabalhadores de inserção para executar simultaneamente por coleção.
Para grandes importações, aumentar o número de trabalhadores de inserção pode aumentar a velocidade da importação.
--numParallelCollections=<int>, -j=<int>Padrão: 4
O número de collections que o
mongorestoredeve restaurar em paralelo.Se você especificar
-jao restaurar uma única collection,-jmapeará para a opção--numInsertionWorkersPerCollectionem vez de--numParallelCollections.
--objcheckForça
mongorestorea validar todas as solicitações de clientes após o recebimento para garantir que os clientes nunca insiram documentos inválidos no banco de dados. Para objetos com um alto grau de aninhamento de subdocumentos,--objcheckpode ter um pequeno impacto no desempenho.
--oplogFile=<path>Especifica o caminho para o arquivo oplog que contém dados de oplog para a restauração. Use com
--oplogReplay.Se você especificar
--oplogFilee houver um arquivooplog.bsonno nível superior do diretório de despejo, omongorestoreretornará um erro.Aviso
Use
oplogFilecom cuidado: especificar manualmente as entradas de oplog a serem aplicadas pode causar corrupção e inconsistências nos dados restaurados.
--oplogLimit=<timestamp>Impede que
mongorestoreaplique entradas de oplog com registro de data e hora mais recente ou igual a<timestamp>. Especifique os valores de<timestamp>na forma de<time_t>:<ordinal>, em que<time_t>são os segundos desde a UNIX epoch, e<ordinal>representa um contador de operações no oplog que ocorreram no segundo especificado.Aviso
Use
oplogLimitcom cuidado: especificar manualmente as entradas de oplog a serem aplicadas pode causar corrupção e inconsistências nos dados restaurados.Você deve usar
--oplogLimitem conjunto com a opção--oplogReplay.
--oplogReplayDepois de restaurar o despejo do banco de dados, reproduz as entradas oplog de um arquivo
oplog.bson.Para aplicar entradas de oplog do arquivo
oplog.bsonna restauração, usemongorestore --oplogReplay. Você pode usarmongodump --oplogcommongorestore --oplogReplaypara garantir que os dados estejam atuais e tenham todas as gravações que ocorreram durante a operação de despejo.mongorestoreprocura qualquer fonte válida para o arquivo bson nos seguintes locais:O nível superior do diretório de despejo, como no caso de um despejo criado com
mongodump --oplog.O caminho especificado por
--oplogFile.<dump-directory>/local/oplog.rs.bson, como no caso de um despejo daoplog.rscoleçãolocaldo em um que é um nó de um conjunto demongodréplicas.
Se houver um arquivo
oplog.bsonno nível superior do diretório de despejo e um caminho especificado por--oplogFile,mongorestoreretornará um erro.Se houver um arquivo
oplog.bsonno nível superior do diretório de despejo, omongorestorerestaura este arquivo como o oplog. Se também houver arquivos bson no diretóriodump/local, omongorestorerestaura como coleções normais.Se você especificar um arquivo oplog usando
--oplogFile,mongorestorerestaurará esse arquivo como o oplog. Se também houver arquivos BSON no diretóriodump/local,mongorestoreos restaura como coleções normais.A seguinte mensagem na saída do replay do oplog mostra o número de inserções antes do replay do oplog. Ela não inclui inserções realizadas durante o replay.
0 document(s) restored successfully. 0 document(s) failed to restore. Para obter um exemplo de
--oplogReplay, consulte Usar um arquivo de oplog para fazer backup e restaurar dados.Observação
Ao utilizar o
mongorestorecom--oplogReplaypara restaurar um conjunto de réplicas, você deve restaurar um despejo completo de um nó do conjunto de réplicas criado utilizandomongodump --oplog.mongorestorecom--oplogReplayfalhará se você usar qualquer uma das opções a seguir para limitar os dados a serem restaurados:
--password=<password>, -p=<password>Especifica uma senha com a qual autenticar em um MongoDB database que usa autenticação. Utilize em conjunto com as opções
--usernamee--authenticationDatabase.Para solicitar a senha ao usuário, passe a opção
--usernamesem--passwordou especifique uma string vazia como o valor--password, como em--password="".Como alternativa, você também pode especificar a senha diretamente no
URI connection string. Fornecer uma string de conexão ao mesmo tempo em que usa--passworde especificar informações conflitantes resultará em um erro.Se estiver se conectando a um cluster do MongoDB Atlas usando o
MONGODB-AWSauthentication mechanism, você pode especificar sua chave de acesso secreta da AWS em:esse campo,
o
connection string, oua variável de ambiente
AWS_SECRET_ACCESS_KEY.
Consulte Conecte-se a um cluster do MongoDB Atlas usando as credenciais AWS IAM para ver um exemplo de cada um.
Aviso
Em alguns sistemas, uma senha fornecida diretamente utilizando a opção
--passwordpode ser visível para programas de status do sistema comopsque podem ser invocados por outros usuários. Em vez disso, considere:omitindo a opção
--passwordpara receber uma solicitação de senha interativa, ouutilizando a opção
--configpara especificar um arquivo de configuração que contém a senha.
<path>O caminho do diretório ou nome do arquivo BSON do qual restaurar os dados.
Você não pode especificar o argumento
<path>e a opção--dir, que também define o diretório de despejo, paramongorestore.
--port=<port>Padrão: 27017
Especifica a porta TCP na qual a instância do MongoDB escuta conexões de cliente.
Alternativamente, você também pode especificar a porta diretamente no
URI connection string. Fornecer uma string de conexão ao mesmo tempo em que usa--porte especificar informações conflitantes resultará em um erro.
--preserveUUIDAs coleções restauradas usam o UUID a partir dos dados de restauração em vez de criar um novo UUID para as coleções que são descartadas e recriadas como parte da restauração.
Para usar
--preserveUUID, você também deve incluir a opção--drop.
--quietExecuta
mongorestoreem um modo silencioso que tenta limitar a quantidade de resultado.Esta opção suprime:
errors
saída de comandos do banco de dados
atividade de replicação
eventos aceitos de conexão
eventos fechados de conexão
--restoreDbUsersAndRolesRestaure as definições de usuário e função para o banco de dados específico. Consulte Coleção system.roles e Coleção system.users para obter mais informações.
Observação
Você só pode usar
--restoreDbUsersAndRolesem um dump de banco de dados que foi criado com a opção--dumpDbUsersAndRoles.Restaurar o banco de dados
adminespecificando--db adminrestaura automaticamente todos os usuários e funções. Você não pode usar--restoreDbUsersAndRolesno banco de dadosadmin, e tentar fazer isso resulta em um erro.
--sslHabilita a conexão com um
mongodoumongosque tenha suporte a TLS/SSL habilitado.Alternativamente, você também pode configurar o suporte de TLS/SSL diretamente no
URI connection string. Fornecer uma string de conexão ao mesmo tempo em que usa--ssle especificar informações conflitantes resultará em um erro.Para obter mais informações sobre TLS/SSL e MongoDB, consulte Configurar mongod e mongos para TLS/SSL e Configuração TLS/SSL para clientes.
--sslAllowInvalidCertificatesIgnora as verificações de validação de certificados de servidor e permite o uso de certificados inválidos. Ao usar a configuração
allowInvalidCertificates, o MongoDB registra como aviso o uso do certificado inválido.Aviso
Embora disponível, evite utilizar a opção
--sslAllowInvalidCertificatesse possível. Se o uso do--sslAllowInvalidCertificatesfor necessário, use a opção somente em sistemas em que a intrusão não seja possível.Conectar-se a uma instância
mongodoumongossem validar os certificados do servidor é um risco potencial à segurança. Se você só precisar desabilitar a validação do nome de host nos certificados TLS/SSL, consulte--sslAllowInvalidHostnames.Como alternativa, você também pode desativar a validação do certificado diretamente no
URI connection string. Fornecer uma string de conexão e, ao mesmo tempo, usar--sslAllowInvalidCertificatese especificar informações conflitantes resultará em um erro.Para obter mais informações sobre TLS/SSL e MongoDB, consulte Configurar mongod e mongos para TLS/SSL e Configuração TLS/SSL para clientes.
--sslAllowInvalidHostnamesDesabilita a validação dos nomes de host em certificados TLS/SSL. Permite que o
mongorestorese conecte às instâncias do MongoDB mesmo que o nome do host em seus certificados não corresponda ao nome de host especificado.Outra opção é desabilitar a validação do nome de host diretamente no
URI connection string. Fornecer uma string de conexão ao mesmo tempo em que usa--sslAllowInvalidHostnamese especificar informações conflitantes resultará em um erro.Para obter mais informações sobre TLS/SSL e MongoDB, consulte Configurar mongod e mongos para TLS/SSL e Configuração TLS/SSL para clientes.
--sslCAFile=<filename>Especifica o arquivo
.pemque contém a sequência de certificados raiz da autoridade de certificação. Especifique o nome do arquivo.pemusando caminhos relativos ou absolutos.Como alternativa, você também pode especificar o arquivo
.pemdiretamente noURI connection string. Fornecer uma string de conexão e, ao mesmo tempo, usar--sslCAFilee especificar informações conflitantes resultará em um erro.Para obter mais informações sobre TLS/SSL e MongoDB, consulte Configurar mongod e mongos para TLS/SSL e Configuração TLS/SSL para clientes.
--sslCRLFile=<filename>Especifica o arquivo
.pemque contém a lista de certificados revogados. Especifique o nome do arquivo.pemusando caminhos relativos ou absolutos.Para obter mais informações sobre TLS/SSL e MongoDB, consulte Configurar mongod e mongos para TLS/SSL e Configuração TLS/SSL para clientes.
--sslPEMKeyFile=<filename>Especifica o arquivo
.pemque contém o certificado e a chave TLS/SSL. Especifique o nome do arquivo.pemusando caminhos relativos ou absolutos.Esta opção é exigida ao utilizar a opção
--sslpara conectar a ummongodoumongosque tenhaCAFilehabilitado semallowConnectionsWithoutCertificates.Como alternativa, você também pode especificar o arquivo
.pemdiretamente noURI connection string. Fornecer uma string de conexão e, ao mesmo tempo, usar--sslPEMKeyFilee especificar informações conflitantes resultará em um erro.Para obter mais informações sobre TLS/SSL e MongoDB, consulte Configurar mongod e mongos para TLS/SSL e Configuração TLS/SSL para clientes.
--sslPEMKeyPassword=<value>Especifica a senha para descriptografar o arquivo de chave de certificado (ou seja,
--sslPEMKeyFile). Utilize a opção--sslPEMKeyPasswordsomente se o arquivo da chave de certificado for criptografado. Em todos os casos, omongorestoreeliminará a senha de todas as saídas de log e relatórios.Se a chave privada no arquivo PEM estiver criptografada e você não especificar a opção
--sslPEMKeyPassword, omongorestoresolicitará uma senha. Consulte a página Senha do Certificado TLS/SSL.Como alternativa, você também pode especificar a senha diretamente no
URI connection string. Fornecer uma string de conexão ao mesmo tempo em que usa--sslPEMKeyPassworde especificar informações conflitantes resultará em um erro.Para obter mais informações sobre TLS/SSL e MongoDB, consulte Configurar mongod e mongos para TLS/SSL e Configuração TLS/SSL para clientes.
Aviso
Em alguns sistemas, uma senha fornecida diretamente utilizando a opção
--sslPEMKeyPasswordpode ser visível para programas de status do sistema comopsque podem ser invocados por outros usuários. Considere utilizar a opção--configpara especificar um arquivo de configuração contendo a senha.
--stopOnErrorForça
mongorestorea interromper a restauração quando encontrar um erro.Por padrão, o
mongorestorecontinua quando encontra erros de validação de documentos e chave duplicados. Para garantir que o programa pare nestes erros, especifique--stopOnError.
--uri=<connectionString>Especifica a string de conexão resolvível da implantação do MongoDB, entre aspas:
--uri="mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]" A partir da versão
100.0domongorestore, a string de conexão pode ser fornecida como um parâmetro posicional, sem usar a opção--uri:mongorestore mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]] Como parâmetro posicional, a connection string pode ser especificada em qualquer ponto da linha de comando, desde que comece com
mongodb://oumongodb+srv://. Por exemplo:mongorestore --username joe --password secret1 mongodb://mongodb0.example.com:27017 --ssl Somente uma string de conexão pode ser fornecida. A tentativa de incluir mais de uma, seja usando a opção
--uriou como um argumento posicional, resultará em um erro.Para obter informações sobre os componentes da string de conexão, consulte a documentação Formato de URI da string de conexão .
Observação
Como alternativa, alguns componentes na
connection stringpodem ser especificados usando suas próprias opções explícitas de linha de comando, como--usernamee--password. Fornecer uma string de conexão e, ao mesmo tempo, usar uma opção explícita e especificar informações conflitantes resultará em um erro.Observação
Se estiver usando
mongorestoreno Ubuntu 18.04, você poderá ver uma mensagem de errocannot unmarshal DNSao usar strings de conexão SRV (no formatomongodb+srv://) com a opção--uri. Nesse caso, use uma das seguintes opções:a opção
--uricom uma string de conexão não SRV (no formuláriomongodb://)a opção
--hostpara especificar o host e conectar diretamente
Aviso
Em alguns sistemas, uma senha fornecida em uma string de conexão com a opção
--uripode ser visível para programas de status do sistema comopsque podem ser invocados por outros usuários. Em vez disso, considere:omitindo a senha na cadeia de conexão para receber um prompt de senha interativo , ou
utilizando a opção
--configpara especificar um arquivo de configuração que contém a senha.
--username=<username>, -u=<username>Especifica um nome de usuário com o qual autenticar em um banco de dados MongoDB que usa autenticação. Utilize em conjunto com as opções
--passworde--authenticationDatabase.Alternativamente, você também pode especificar o nome de usuário diretamente no
URI connection string. Fornecer uma string de conexão ao mesmo tempo em que usa--usernamee especificar informações conflitantes resultará em um erro.Se estiver se conectando a um cluster do MongoDB Atlas usando o
MONGODB-AWSauthentication mechanism, você pode especificar seu ID de chave de acesso da AWS em:esse campo,
o
connection string, oua variável de ambiente
AWS_ACCESS_KEY_ID.
Consulte Conecte-se a um cluster do MongoDB Atlas usando as credenciais AWS IAM para ver um exemplo de cada um.
--verbose, -vAumenta a quantidade de relatórios internos retornados no resultado padrão ou em arquivos de registro. Aumente a verbosidade com o formulário
-vincluindo a opção várias vezes (por exemplo,-vvvvv.)
--writeConcern=<document>Padrão: maioria
Especifica a write concern para cada operação de gravação que
mongorestoreexecuta.Especifique a preocupação de gravação como um documento com opções w:
--writeConcern="{w:'majority'}" Se a write concern também estiver incluída no
--uri connection string, a linha de comando--writeConcernsubstitui a write concern especificada na string URI.