Para criar um backup no MongoDB, copie os arquivos diretamente ou use uma das várias ferramentas de backup/gerenciamento.
Existem várias maneiras de fazer backup de um banco de dados MongoDB:
- Copiar os arquivos de dados
- Usar
mongodump
- Usar o MongoDB Cloud Manager
- Usar o Gerenciador de operações
Copiar os arquivos de dados
Você pode copiar os arquivos de dados subjacentes que o MongoDB usa para armazenar dados. Eles estão localizados no diretório de dados.
A localização padrão do diretório de dados é /data/db , no entanto, se você usar um local diferente, precisará usá-lo.
Você deve copiar todo o diretório para um backup completo.
Você também pode usar instantâneos se o volume for compatível. Por exemplo, no Linux, use o LVM (Logical Volume Manager) para criar um instantâneo, então você pode copiar desse instantâneo para seu local de backup/local remoto.
Usar mongodump
Você pode usar
mongodump
para fazer backup dos dados e mongorestore
para restaurá-lo. Para fazer backup rapidamente de todo o conteúdo do servidor em execução, abra um novo Terminal/Prompt de Comando, mude para um diretório que você deseja que o /dump pasta a ser criada e digite o seguinte:
mongodump
Você precisará fornecer o caminho completo se o diretório bin do MongoDB não estiver em seu PATH.
Se você achar que não pode executar mongodump , certifique-se de ter saído do mongo utilitário, ou abriu uma nova janela Terminal/Prompt de Comando antes de executar mongodump , pois é um utilitário separado.
Mensagem resultante:
2016-07-12T15:44:34.467+0700 writing music.artists to 2016-07-12T15:44:34.467+0700 writing music.musicians to 2016-07-12T15:44:34.467+0700 writing music.catalog to 2016-07-12T15:44:34.468+0700 done dumping music.artists (13 documents) 2016-07-12T15:44:34.469+0700 done dumping music.musicians (10 documents) 2016-07-12T15:44:34.469+0700 done dumping music.catalog (10 documents) 2016-07-12T15:44:34.470+0700 writing music.producers to 2016-07-12T15:44:34.470+0700 writing music.jazz to 2016-07-12T15:44:34.470+0700 done dumping music.producers (5 documents) 2016-07-12T15:44:34.470+0700 done dumping music.jazz (1 document) 2016-07-12T15:44:34.534+0700 writing test.restaurants to 2016-07-12T15:44:34.705+0700 done dumping test.restaurants (25359 documents)
E aqui está o que parece no Finder do meu Mac:
Como você pode ver, ele criou uma pasta chamada dump , em seguida, uma pasta para cada banco de dados e, em seguida, despejou todas as coleções e seus metadados na respectiva pasta do banco de dados. Expandi a música pasta de banco de dados para mostrar os arquivos dentro desse diretório.
Observe que
mongodump
sobrescreve os arquivos de saída se eles existirem na pasta de dados de backup, portanto, certifique-se de mover ou renomear qualquer arquivo que você precise manter antes de executar mongodump
novamente. Fazer backup de um único banco de dados
Você pode fazer backup de um único banco de dados especificando o nome do banco de dados no
--db
parâmetro:mongodump --db=music
Fazer backup de uma única coleção
Você pode fazer backup de uma única coleção especificando o nome da coleção no
--collection
parâmetro:mongodump --db=music --collection=artists
Especifique um local de backup
Use o
--out
parâmetro para especificar o diretório no qual você deseja que o backup seja gravado:mongodump --db music --out /data/backups
Mais opções
mongodump
tem muito mais opções para especificar como é feito o backup dos dados. Você sempre pode executar mongodump --help
para ver quais opções estão disponíveis. Restaurando um mongodump
Cópia de segurança
Você pode restaurar qualquer
mongodump
backup executando mongorestore
. que funciona de maneira semelhante ao mongodump
. Veja
mongorestore --help
para mais informações. mongodump
e mongorestore
destinam-se principalmente a implantações menores e para backup e restaurações parciais com base em uma consulta, sincronização de ambientes de produção para ambientes de teste ou desenvolvimento ou alteração do mecanismo de armazenamento de um autônomo. Para sistemas maiores, clusters fragmentados ou conjuntos de réplicas, use um sistema de backup mais robusto, como o MongoDB Cloud Manager ou o Ops Manager.
Gerenciador de Nuvem MongoDB
O MongoDB Cloud Manager é uma plataforma hospedada para gerenciar o MongoDB.
Você pode usar o MongoDB Cloud Manager para fazer backup contínuo de conjuntos de réplicas do MongoDB e clusters fragmentados lendo os dados de oplog de sua implantação do MongoDB.
O MongoDB Cloud Manager funciona por assinatura. Mais informações aqui.
Gerente de operações
O Ops Manager é como o MongoDB Cloud Manager, exceto que é instalado em seu ambiente local (ou seja, não na nuvem). Assim, você pode usá-lo para monitorar, automatizar e fazer backup de sua implantação do MongoDB.
O Ops Manager está disponível para assinantes do MongoDB.