Apenas como ilustração, o caractere traço (-) pode ser utilizado para gerar o backup de bancos Mongo diretamente para a saída padrão capturada pelo bpipe, mas é necessário especificar a collection (tabela) para cada fluxo:
mongodump --db hfaria --collection teste -o - mongodump --db hfaria --collection teste2 -o -
O traço também pode ser utilizado no comando mongorestore para a leitura da entrada padrão durante o restore do bacula pelo bipe:
mongorestore --db hfaria --collection teste -
É possível utilizar um script no Cliente Zimbra a partir do FileSet para automaticamente listar todas as bases e criar linhas de configuração do bpipe para o Bacula.
Exemplo de File Set Include:
\| /opt/bacula/scripts/mongo_bpipe.sh
Exemplo de script mongo_bpipe.sh:
# # Autoria: Heitor Faria (Copyleft: all rights reversed). # Testado por: xxxx # # Deve ser chamado no sub-recurso INCLUDE do FileSet do bacula-dir.conf, referente ao backup do cliente instalado na máquina do Mongo (por exemplo): # # Plugin = "\|/etc/bacula/mongo_bpipe.sh %l" # for db in $(echo "db.adminCommand( { listDatabases: 1 } )" | mongo --quiet | grep name | cut -d '"' -f 4); do for coll in $(echo "show collections" | mongo --quiet $db); do echo "bpipe:/opt/bacula/working/$db_$coll:mongodump --db $db --collection $coll -o -:mongorestore --db $db --collection $coll -" done done
A restauração será feita automaticamente para o MongoDB, se selecionado o named pipe para restore.
Alternativamente, as collections podem ser restauradas para disco, alterando o comando para “dd of=arquivo”.
Disponível em: PortuguêsEnglish (Inglês)Español (Espanhol)