¿Cómo instalo MongoDB 3.0 en Vivid?

8

El paquete oficial vívido para mongodb es 2.x, y los paquetes que MongoDB se proporcionan en http://repo.mongodb.org/apt/ubuntu/dists/trusty/ solo están disponibles para versiones de LTS.

Una alternativa es que podría volver a 14.04 LTS, pero necesitaría instalar openjdk-8-jdk, que solo está disponible para vívido.

Hugh Rawlinson
fuente
1
Creo que no sucederá nada malo si lo instala desde un repositorio confiable a vívido.
Pilot6

Respuestas:

13

Es posible que MongoDB no se inicie si usa los paquetes Trusty:

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

En este caso, instale los paquetes Debian Wheezy como se describe al final.

Instale los paquetes Trusty DEB

Descargar los archivos 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 instalar con (en este orden)

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

Y tomado de los comentarios, gracias @ Pilot6 :

Pueden tener dependencias entre sí. Es por eso que los paquetes de instalación uno por uno pueden dar errores. yo sugierosudo dpkg -i mongodb*.deb


Use el 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

Utilice los paquetes de Debian Wheezy

Es posible que MongoDB no se inicie si usa los paquetes Trusty:

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

En este caso, instale los paquetes Debian Wheezy como se describe a continuación

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
AB
fuente
Pueden tener dependencias entre sí. Es por eso que los paquetes de instalación uno por uno pueden dar errores. Sugierosudo dpkg -i mongodb*.deb
Pilot6
@ Pilot6 Por sudo dpkg -i mongodb-org_3.0.3_amd64.deblo tanto, como último comando
AB
Sólo una sugerencia. Y es más fácil como un comando. Si instala varios paquetes en un comando, las dependencias se resuelven.
Pilot6
@ Pilot6 agregado y vinculado =)
AB
Ok, utilicé los paquetes de confianza de Deby y funcionó. ¿Cómo puedo entonces lograr que se ejecuta como un servicio para que pueda iniciar y detener el uso service mongod start?
Hugh Rawlinson
4

Instalado con éxito con mongo versión 3.0.6 en mi Ubuntu 15.04 usando el repositorio debian wheezy - vea los pasos a continuación

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

Sin embargo, después de todos los pasos anteriores y mongodb instalado en mi máquina, ahora cuando intenté iniciar el servicio mongodb fallaba sudo service mongod start. Lanzando el siguiente mensaje de error

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

Así es como resolví y mongodb de inicio normalmente

  • Cambie los archivos de almacenamiento de datos predeterminados de MongoDB de / var / lib / mongodb a / data / db

  • sudo mkdir -p /data/db

  • sudo gedit /etc/mongod.conf y cambie la línea "dbpath" como se muestra a continuación

  • Reemplace dbpath = / var / lib / mongodb TO dbpath = / data / db y luego guarde el archivo.

  • Luego elimine el antiguo valor predeterminado / var / lib / mongodb

  • Ahora debemos hacer todos los directorios / archivos propiedad del usuario mongod

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

Y ahora finalmente puedo comenzar a Mongo con sudo service mongod start

Y chcek con el que se ejecuta el servicio sudo systemctl status mongod : debería mostrar un mensaje similar al siguiente

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

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

He detallado mis pasos en mi blog .

Rohan_Paul
fuente
1

Como he dicho antes: los paquetes Debian / Ubuntu se han parcheado con unidades de servicio systemd, para llenar el vacío dejado por el material que se publica directamente desde mongodb.org. Pero no hay escasez de mongodb.servicearchivos de unidad en la WWW. Tampoco es difícil escribir uno. (Yo tengo.)

Específicamente: Encontrará dicha unidad de servicio en el paquete mongodb-server versión 2.6 para Ubuntu versión 15 . También hay una unidad de servicio publicada por mongodb.org , de hecho. Es simplemente el caso de que la gente de mongodb.org ha confundido erróneamente el uso de RPM con el uso de systemd en el material específico de distribución.

Tenga en cuenta que, irónicamente, las unidades de servicio suministradas por mongodb.org no aplican las directivas de la unidad de servicio systemd que mongodb.org recomienda . Tampoco los de Debian / Ubuntu. Pero, de nuevo: una unidad de servicio escrita a mano con estas directivas no es difícil de escribir; o de hecho modificar para agregar cosas como numactl. ☺

Otras lecturas

JdeBP
fuente
0

Bueno, ninguna de las respuestas de AB funcionó. Entonces mi única opción era instalar desde el tarball

Siga las instrucciones sobre los documentos relacionados con este tema.

deostroll
fuente
0

Como complemento corto a la excelente respuesta de @ AB. En vívido amd64, con una instalación previa de mongod 2.6 .26, simplemente reemplazando el sources.list.darchivo existente con

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

seguido de un dist-upgrade funcionó automáticamente.

sudo apt-get update
sudo apt-get dist-upgrade
serv-inc
fuente