Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Faça backup e restauração com as ferramentas MongoDB

Este tutorial aborda a criação de backups e a restauração de dados usando mongodump e.mongorestore

Para restaurar um backup de sua implantação auto-hospedada para uma implantação gerenciada do MongoDB Atlas, consulte Seed with mongorestore.

Os mongorestore utilitários mongodump e funcionam com despejos de dados BSON e são úteis para criar backups de pequenos sistemas. Para backups resilientes e sem interrupções, use file system snapshots ou snapshots de disco em nível de bloco com os Backups em Nuvem do MongoDB Atlas.

Observação

Faça backup de clusters fragmentados com MongoDB Atlas

Para usar mongodump e como uma estratégia de backup para clusters fragmentados, consulte Fazer backup mongorestore de um cluster fragmentado autogerenciado com um descarte de banco de dados.

Os clusters fragmentados também podem usar um dos seguintes processos coordenados de backup e restauração, que mantêm as garantias de atomicidade das transações entre shards:

Como o mongodump e o interagem mongorestore mongod com uma instância do em execução, eles podem impacto o desempenho do banco de dados . As ferramentas criam tráfego e forçam o banco de dados a ler todos os dados por meio da memória. Quando o MongoDB lê dados acessados com pouca frequência, ele remove os dados acessados com frequência, degradando o desempenho do volume de trabalho regular do banco de dados.

Ao fazer backup de dados com ferramentas MongoDB , siga estas diretrizes:

Dica

Para obter mais informações, consulte Métodos de backup para uma implantação autogerenciada. Para obter a referência das Database Tools MongoDB , consulte:

mongorestore e podem gerar dados para um arquivo compactado, que é uma alternativa de arquivo único para vários arquivos BSON. Os arquivos compactados são formatos para fins especiais que suportam gravações de arquivos não contíguos. Elas permitem backups simultâneos do MongoDB e restaurações no MongoDB. Os arquivos também otimizam a E/S de disco durante o backup e a mongodump restauração.

Você também pode gravar arquivos na saída padrão (stdout). A gravação na saída padrão permite a migração de dados pelas redes, a redução do E/S de disco e os ganhos de simultaneidade nas ferramentas do MongoDB e no seu mecanismo de armazenamento.

Para obter mais informações sobre arquivos compactados, consulte a --archive opção.

Os backups oferecem um snapshot do estado atual do banco de dados. Ao restaurar de um backup, o banco de dados restaurado não inclui alterações feitas após a conclusão do backup, o que pode resultar em perda de dados.

O mongodump utilitário faz o backup dos dados conectando-se a um em mongod execução. Ele pode fazer backup de um servidor, banco de dados ou coleção inteiros, ou usar uma query para fazer backup de parte de uma coleção. mongodump exclui o conteúdo do local banco de dados de sua saída.

Sem argumentos, mongodump se conecta à instância do MongoDB no sistema local na porta 27017 e cria um backup do banco de dados denominado dump/ no diretório atual:

mongodump

Para especificar o host e a porta, use uma das seguintes opções:

  • Especifique a string --uri usando uma string de conexão SRV ou padrão :

    mongodump --uri="mongodb+srv://username:password@cluster0.example.mongodb.net" <additional_options>
  • Especifique o nome do host e a porta no --host:

    mongodump --host="mongodb0.example.com:27017" <additional_options>
  • Especifique --host e --port separadamente:

    mongodump --host="mongodb0.example.com" --port=27017 <additional_options>

Para especificar um diretório de saída diferente, utilize --out -o(ou):

mongodump --out=/opt/backup/mongodump-1

Para limitar o despejo a um banco de dados ou collection específica, use --db --collectione:

mongodump --collection=myCollection --db=test

Isso cria um dump de myCollection do banco de dados test em um subdiretório dump/ do diretório atual.

mongodump substitui arquivos existentes na pasta de saída (padrão: dump/). Antes de executá-lo várias vezes, faça backup ou renomeie a pasta de saída.

Para executar em um mongodump MongoDB deployment que tenha controle de acesso ativado, você deve ter privilégios que concedam find a ação para cada banco de dados a backup ser submetido a backup. A função integrada fornece os privilégios necessários para realizar o backup de todo e qualquer banco de dados.

O papel do backup fornece privilégios adicionais para criar uma cópia de segurança da coleção do system.profile que existe ao executar com perfil do banco de dados.

Utilize --host e para conectar a uma instância --port remota:

mongodump \
--host=mongodb1.example.net \
--port=3017 \
--username=user \
--password="pass" \
--out=/opt/backup/mongodump-1

Especifique o nome de usuário e senha em qualquer comando mongodump para autenticar.

A --oplog opção coleta entradas de oplog durante o backup para que você possa restaurar o banco de dados ao seu estado no momento em que o backup for concluído.

Com --oplog o, omongodump copia todos os dados do banco de dados de origem e todas as entradas de oplog do início ao fim do backup. Use isso em conjunto com para restaurar um backup que reflete o momento exato mongorestore --oplogReplay em que mongodump foi concluído.

O utilitário restaura um backup binário mongorestore criado mongodump por conectando diretamente a um mongod em execução. Por padrão, omongorestore procura por uma cópia de segurança do banco dump/ de dados no diretório e pode restaurar uma cópia de segurança inteira ou um subconjunto.

Observação

Todas as coleções MongoDB têm UUIDs por padrão. Quando o MongoDB restaura collections, as collections restauradas retêm seus UUIDs originais. Ao restaurar uma collection onde nenhum UUID estava presente, o MongoDB gera um UUID para a collection restaurada.

Para mais informações sobre UUIDs de coleção, consulte Coleções.

Para conectar mongorestore a um mongod ativo:

mongorestore --uri <connection string> <path to the backup>

Por exemplo, para restaurar a partir de um diretório:

mongorestore /opt/backup/mongodump-1

Isso restaura o backup na instância mongod em localhost:27017.

Para restaurar dados em uma implantação que tenha o controle de acesso ativado, a função restore fornece os privilégios necessários se os dados não incluírem dados de coleta system.profile e você executar mongorestore sem a opção --oplogReplay.

Você precisa de privilégios adicionais se o backup de dados incluir system.profile dados de collection do ou se você executar --oplogReplay com:

system.profile

Se os dados de backup incluírem dados de coletasystem.profilee o banco de dados de destino não contiver a coleçãosystem.profile, mongorestoretentará criar a coleção mesmo que o programa não restaure system.profile documentos. O usuário requer privilégios adicionais para executar açõescreateCollectioneconvertToCappedna coleçãosystem.profilepara um banco de dados.

As funções incorporadas dbAdmin e dbAdminAnyDatabase fornecem os privilégios adicionais.

--oplogReplay

Para executar com,--oplogReplay crie um role definido pelo usuário que tenha anyAction anyResourceem.

Conceda somente aos usuários que devem executar mongorestore --oplogReplaycom.

Por padrão, mongorestore se conecta a localhost:27017. Para restaurar para um host ou porta diferente, use --host e --port:

mongorestore --host=mongodb1.example.net --port=3017

Para autenticar, inclua--usernamee--authenticationDatabase. Omita--passwordpara que mongorestore solicite a senha:

mongorestore \
--host=mongodb1.example.net \
--port=3017 \
--username=user \
--authenticationDatabase=admin \
/opt/backup/mongodump-1

Para capturar gravações que ocorrem enquanto o mongodump está em execução, use --oplog. mongodump cria um arquivo oplog.bson com entradas oplog para cada gravação durante a execução. Aplique essas operações com --oplogReplay ao restaurar.

Para ver exemplos, consulte Exemplos de mongodump e Exemplos de mongorestore.

mongorestore --oplogReplay restaura todos os dados de oplog.bson, mas não suporta a restauração em um ponto arbitrário no tempo. Use-o para garantir que os dados restaurados reflitam quaisquer gravações que ocorreram durante a execução do mongodump --oplog.

Observação

--oplog destina-se ao uso com conjuntos de réplicas. Para clusters fragmentados, incluindo conjuntos de réplicas que fazem parte de um ambiente fragmentado, consulte Fazer backup de um cluster fragmentado autogerenciado com um despejo de banco de dados.

Use --drop para soltar cada coleção antes de restaurar.