O MongoDB 3.0 apresenta um novo mecanismo de armazenamento chamado wiredTiger
que resulta em uso de memória e espaço em disco bastante reduzido.
Como meu banco de dados está atualmente com ~ 20 milhões de objetos e usando até 70 GB de RAM, esta atualização chega no momento certo para adiar uma atualização de hardware.
Como você migra uma instalação existente do MongoDB 2.6 para 3.0 e, ao mesmo tempo, obtém os benefícios do wiredTiger?
A documentação refere-se às opções que resultam em erros de inicialização que impedem a inicialização do MongoDB. Além disso, os locais dos arquivos não coincidem com os do Ubuntu (Server 14.04 LTS).
Respostas:
Nas instalações padrão, o arquivo de configuração está em
/etc/mongod.conf
. O que os documentos do MongoDB não mencionam é que, ao migrar para o WiredTiger, também precisamos atualizar o arquivo de configuração para o novo formato YAML introduzido no 2.6.Tanto quanto posso dizer, a
engine
opção está disponível apenas no novo formato de configuração.A migração do mecanismo de armazenamento antigo consiste em criar um dump de banco de dados, desligar o mongodb, alterar configurações e depois importar o dump para o novo mecanismo de armazenamento.
Crie um backup. A sério. Precisamos de um despejo de banco de dados que depois importaremos para o novo mecanismo de banco de dados:
Pare o serviço mongodb
Mova os dados do local atual para outro lugar (o MongoDB não será iniciado se o diretório de dados contiver arquivos gerados pelo mecanismo de armazenamento antigo).
Atualize o MongoDB para a versão 3.0 (de http://docs.mongodb.org/v3.0/tutorial/install-mongodb-on-ubuntu/ ):
Converta o arquivo de configuração do antigo (anterior ao 2.6) para o formato YAML atual. O mínimo necessário é:
Verifique se nenhuma linha no formato antigo permanece ou o MongoDB não será iniciado.
A documentação completa do arquivo de configuração está em: http://docs.mongodb.org/v3.0/reference/configuration-options/
Opcionalmente, faça um backup do log:
Reinicie o mongodb
Carregue o backup para converter dados em novo mecanismo de armazenamento
Depois de verificar se todos os seus dados estão ok, você pode excluir o diretório com o formato de dados antigo
Observe que, para conjuntos de réplicas e clusters fragmentados, existem algumas etapas adicionais: http://docs.mongodb.org/v3.0/release-notes/3.0-upgrade/?_ga=1.86531032.1131483509.1428671022#change-replica-set-storage -engine-to-wiredtiger
fonte
Usando o antigo formato de arquivo de configuração , tive sucesso com:
fonte