Desafortunadamente, el paquete oficial de Ubuntu para MongoDB todavía está atascado en 2.6, lo cual es antiguo en este momento ( este error no se detectó en vivo, astuto o xenial).
MongoDB aún no ha lanzado un paquete para 16.04 (Xenial), entonces, ¿cómo puedo usar los paquetes 14.04 (Trusty) para instalar MongoDB 3.2+ en 16.04?
Respuestas:
Es un truco, pero sí, esto se puede hacer. Hay un paso indocumentado necesario para iniciar el servicio y (curiosamente) a menos que desee continuar con la conversión de trabajo inicial manualmente,
mongodb
primero debe instalar el paquete de Ubuntu , luego eliminarlo para que tenga un servicio utilizable. Una instalación directa de los paquetes MongoDB no le dará un servicio que funcione en un nuevo 16.04.Actualización: julio de 2016: la solución oficial para esto (agregando soporte para 16.04 a los paquetes) se ha completado en la rama de desarrollo 3.3 como parte del SERVER-23043 , y se ha lanzado como backport en la serie 3.2 como parte de 3.2. 7 . Por lo tanto, si está utilizando 3.2.7+ no necesita hacer esto y la instalación oficial del paquete MongoDB debería funcionar.
En cualquier caso, después de agregar / quitar, siga las instrucciones habituales para 14.04, resumidas aquí:
La instalación se realiza correctamente y, gracias al paquete de Ubuntu, tenemos todas las piezas necesarias para un servicio, pero al intentar iniciar el servicio inicialmente fallará:
Arreglar esto no es demasiado difícil:
Ahora podemos habilitar / iniciar el servicio, obtener su estado, etc.
Éxito - y obtenemos un buen puntero al archivo de configuración activo (que está en el
key=value
formato anterior, consulte aquí para ver ejemplos en el formato YAML recomendado más reciente).Nota: En realidad habrá dos archivos de configuración
/etc/mongod.conf
y/etc/mongodb.conf
gracias a las pequeñas diferencias entre los dos paquetes que hemos instalado. El servicio ahora activo apunta al formato antiguo de forma predeterminada/etc/mongodb.conf
: puede cambiar moviendo / copiandomongod.conf
amongodb.conf
si lo desea, o simplemente editar el archivo directamente.Una vez iniciado, para probar, conéctese a la base de datos con el
mongo
shell:Si desea deshacerse de las advertencias de THP, consulte esta respuesta .
fuente
sudo service mongodb start
regresaFailed to start mongodb.service: Unit mongodb.service not found
.sudo service mongodb start
no devuelve nada.sudo service mongodb status
devuelve un mensaje fallido constatus=2
. Para solucionar esto, cambié la ruta en el archivo de servicio recién creado de/etc/mongodb.conf
a/etc/mongod.conf
. Basándose en su respuesta original, ¿cómo consigue que mongodb se inicie en el inicio del sistema?sudo systemctl enable mongodb
. Ver: digitalocean.com/community/tutorials/…Si ya lo instaló, elimine mongodb:
Pruebe con la recomendación sobre digitalocean https://www.digitalocean.com/community/tutorials/how-to-install-mongodb-on-ubuntu-16-04
fuente