Como instalo o MongoDB 3.0 no Vivid?

8

O pacote oficial vívido para o mongodb é 2.x, e os pacotes que o MongoDB fornece em link estão disponíveis apenas para versões LTS.

Uma alternativa é que eu poderia voltar para o 14.04 LTS, mas eu precisaria instalar o openjdk-8-jdk, que está disponível apenas para cores vivas.

    
por Hugh Rawlinson 13.06.2015 / 21:34

5 respostas

13

É possível que o MongoDB não inicie se você usar os pacotes da Trusty:

Failed to start mongod.service: Unit mongod.service failed to load: No such file or directory.

Neste caso, instale os pacotes Debian Wheezy conforme descrito no final.

Instale os pacotes Trusty DEB

Faça o download dos arquivos DEB

cd
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-mongos_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-server_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-shell_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-tools_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org_3.0.3_amd64.deb

E instale com (nesta ordem)

sudo dpkg -i mongodb-org-server_3.0.3_amd64.deb
sudo dpkg -i mongodb-org-tools_3.0.3_amd64.deb
sudo dpkg -i mongodb-org-shell_3.0.3_amd64.deb
sudo dpkg -i mongodb-org-mongos_3.0.3_amd64.deb
sudo dpkg -i mongodb-org_3.0.3_amd64.deb

E tirado dos comentários, obrigado @ Pilot6 :

  

Eles podem ter dependências um do outro. É por isso que a instalação   pacotes um por um podem gerar erros. Sugiro sudo dpkg -i mongodb*.deb

Use o Trusty PPA

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org

Use os pacotes do Debian Wheezy

É possível que o MongoDB não inicie se você usar os pacotes da Trusty:

Failed to start mongod.service: Unit mongod.service failed to load: No such file or directory.

Neste caso, instale os pacotes Debian Wheezy conforme descrito abaixo

sudo apt-get remove mongodb-org
sudo apt-get autoremove
sudo rm /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org
    
por A.B. 13.06.2015 / 21:54
4

Instalado com sucesso com o mongo versão 3.0.6 no meu Ubuntu 15.04 usando o repositório debian wheezy - veja os passos abaixo

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10

echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list

sudo apt-get update

sudo apt-get install -y mongodb-org

No entanto, depois de todas as etapas acima e do mongodb instalado em minha máquina, agora, quando tentei iniciar o serviço mongodb com sudo service mongod start , ele falharia. Jogando a seguinte mensagem de erro

Failed to start mongod.service: Unit mongod.service failed to load: No such file or directory.

Então, aqui está como resolvi e iniciei o mongodb normalmente

  • Altere os arquivos de armazenamento de dados padrão do MongoDB de / var / lib / mongodb para / data / db

  • sudo mkdir -p /data/db

  • sudo gedit /etc/mongod.conf e altere a linha "dbpath" conforme abaixo

  • Substitua dbpath = / var / lib / mongodb para dbpath = / data / db e salve o arquivo.

  • Em seguida, exclua o padrão antigo / var / lib / mongodb

  • Agora, precisamos criar todos os diretórios / arquivos de propriedade do usuário mongod

  • Executar sudo chown -R mongodb:mongodb /data/db

E agora, finalmente, posso começar o mongo com sudo service mongod start

E chcek que o serviço está rodando com sudo systemctl status mongod - Ele deve mostrar uma mensagem semelhante a abaixo

Loaded: loaded (/etc/init.d/mongod)

Active: active (running) since Thu 2015-09-03 04:57:49 IST; 7s ago

Descrevi meus passos na minha postagem no blog .

    
por Rohan_Paul 03.09.2015 / 02:51
1

Como eu disse antes: Os pacotes Debian / Ubuntu foram corrigidos com unidades de serviço systemd, para preencher o buraco deixado pelo material que é publicado diretamente do mongodb.org. Mas não há falta de mongodb.service arquivos unitários na WWW. Também não é difícil escrever um. (Eu tenho).

Especificamente: Você encontrará tal unidade de serviço em o pacote mongodb-server versão 2.6 para o Ubuntu versão 15 . Há também uma uma unidade de serviço publicada pelo mongodb.org . É simplesmente o caso que as pessoas do mongodb.org confundiram erroneamente o uso do RPM com o uso do systemd no material específico da distribuição.

Observe que, ironicamente, as unidades de serviço fornecidas pelo mongodb.org não se aplicam a unidade de serviço systemd estabelece que o próprio mongodb.org recomenda . Nem os fornecidos pelo Debian / Ubuntu. Mas, novamente: uma unidade de serviço escrita à mão com essas diretivas não é difícil de escrever; ou mesmo modificar para adicionar coisas como numactl. ☺

Leitura adicional

por JdeBP 14.06.2015 / 14:47
0

Bem, nenhuma das respostas de A.B funcionou. Então, minha única opção era instalar a partir do tarball

Siga as instruções nos documentos relacionados a este tópico.

    
por deostroll 18.08.2015 / 20:03
0

Como um pequeno add-on para a excelente resposta do @ A.B. Na vívida amd64, com uma instalação anterior do mongod 2.6 .26, simplesmente substituindo o arquivo sources.list.d existente por

deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse

seguido por um dist-upgrade trabalhado automaticamente.

sudo apt-get update
sudo apt-get dist-upgrade
    
por serv-inc 01.09.2015 / 09:31