Infelizmente, o pacote oficial do Ubuntu para o MongoDB ainda está preso no 2.6, que é antigo neste momento ( esse bug não foi detectado por ser vívido, ardiloso ou xenial).
O MongoDB ainda não lançou um pacote para 16.04 (Xenial), então como posso usar os pacotes 14.04 (Trusty) para instalar o MongoDB 3.2+ no 16.04?
Respostas:
É um pouco complicado, mas sim, isso pode ser feito. Há uma etapa não documentada necessária para realmente iniciar o serviço e (por incrível que pareça), a menos que você queira brincar manualmente com a conversão inicial de tarefas, é necessário instalar o
mongodb
pacote Ubuntu primeiro e depois removê-lo para que você tenha um serviço utilizável. Uma instalação direta dos pacotes MongoDB não fornecerá um serviço funcional em um 16.04 novo.Atualização - julho de 2016: a correção oficial para isso (adicionando suporte para 16.04 aos pacotes) foi concluída no ramo de desenvolvimento 3.3 como parte do SERVER-23043 - e foi lançada como um backport na série 3.2 como parte do 3.2. 7 . Portanto, se você estiver usando o 3.2.7+, não precisará fazer isso e a instalação oficial do pacote MongoDB deve funcionar.
De qualquer forma, depois de adicionar / remover, siga as instruções usuais do 14.04, resumidas aqui:
A instalação foi bem-sucedida e, graças ao pacote Ubuntu, temos todas as peças necessárias para um serviço, mas a tentativa de iniciar o serviço falhará inicialmente:
Corrigir isso não é muito difícil:
Agora podemos ativar / iniciar o serviço, obter seu status etc.
Êxito - e obtemos um bom ponteiro para o arquivo de configuração ativo (que está no
key=value
formato antigo , veja aqui os exemplos no formato YAML recomendado mais recente).Nota: Na verdade, haverá dois arquivos de configuração
/etc/mongod.conf
e,/etc/mongodb.conf
graças a pequenas diferenças entre os dois pacotes que instalamos. O serviço agora ativo aponta para o formato antigo por padrão/etc/mongodb.conf
- você pode alternar movendo / copiando omongod.conf
para,mongodb.conf
se desejar, ou simplesmente editando o arquivo diretamente.Depois de iniciado, para testar, conecte-se ao banco de dados com o
mongo
shell:Se você deseja se livrar dos avisos THP, confira esta resposta .
fonte
sudo service mongodb start
retornaráFailed to start mongodb.service: Unit mongodb.service not found
.sudo service mongodb start
não retorna nada.sudo service mongodb status
retorna uma mensagem com falha comstatus=2
. Para corrigir isso, alterei o caminho no arquivo de serviço recém-criado de/etc/mongodb.conf
para/etc/mongod.conf
. Com base na sua resposta original, como você inicia o mongodb na inicialização do sistema?sudo systemctl enable mongodb
. Veja: digitalocean.com/community/tutorials/…Se você já o instalou, remova o mongodb:
Tente com recomendação no digitalocean https://www.digitalocean.com/community/tutorials/how-to-install-mongodb-on-ubuntu-16-04
fonte