Como restaurar um banco de dados específico do backup usando o comando mongorestore

62

Criei um backup de todos os meus bancos de dados usando o comando mongodump. Agora eu quero restaurar um banco de dados específico usando o comando mongorestore.

Como isso é possível, eu uso este comando: --db opção então o mongodb não restaura um banco de dados específico.

pankaj choudhary
fonte

Respostas:

85

Para restaurar um único banco de dados, você precisa fornecer o caminho para o diretório de despejo como parte da mongorestorelinha de comando.

Por exemplo:

# Backup the training database
mongodump --db training

# Restore the training database to a new database called training2
mongorestore --db training2 dump/training

A --dbopção para mongodumpespecifica o banco de dados de origem a ser despejado.

A --dbopção para mongorestoreespecifica o banco de dados de destino no qual restaurar.

Stennie
fonte
Eu faço backup usando mongodump --archivepara criar arquivo .gz. Posso saber como restauramos o arquivo .gz e também especificar o novo nome do banco de dados? O tamanho do meu arquivo .gz é de 2 GB, portanto, extraí-lo consome muito tempo.
Nam G VU
@NamGVU Você pode postar uma nova pergunta, incluindo sua versão mongodumpe a linha de comando exata que está usando? O --archivecomando cria um formato de arquivo especial diferente de --gzip. Dependendo da mongodumpversão e das opções de linha de comando usadas, há recomendações diferentes para renomear bancos de dados ou coleções com mongorestore.
Stennie
Eu fiz a pergunta conforme necessário, por favor ajude. Obrigado! dba.stackexchange.com/q/189928/52550
Nam G VU
Pode nos ajudar aqui dba.stackexchange.com/q/189928/52550
Nam G VU
Obrigado Stennie, sua sugestão funcionou perfeitamente para mim.
User752746
13

Use o seguinte comando para restaurar o mongo db:

mongorestore -d dbname dbpath
user104596
fonte
9
$ mongorestore --drop -d <database-name> <dir-of-backup-files>
  • --drop A remoção é necessária se você estiver substituindo um banco de dados existente
  • -d <database-name> O nome do banco de dados para criar / substituir
  • <dir-of-backup-files> Por alguma razão, isso é necessário, mesmo que seja o diretório atual

insira a descrição da imagem aqui

Referência: https://coderwall.com/p/3hx06a/restore-a-mongodb-database-mongorestore

duvida1
fonte
11
Isso funcionou para mim - basta ter cuidado, uma vez que vai cair o db
Alexander Mills
Detalhes úteis aqui.
Wylliam Judd 25/10
1

Restaurando usando o mongorestore

Depois de verificar mongode mongoestar em execução, vá para o diretório pai do dump em um novo terminal. E use o comando mongorestore dump. Onde dumpestá o nome da pasta na qual o despejo de banco de dados está presente.

Restaurando usando o mongorestore

aluna
fonte