¿Cuál es la forma correcta de iniciar un servicio de mongod en Linux / OS X?

He instalado mongodb y he podido ejecutarlo, trabajar con él, hacer cosas sencillas de tipo de lectura / escritura de DB. Ahora estoy tratando de configurar mi Mac para ejecutar mongod como un servicio.

Obtengo “Comando no encontrado” en respuesta a:

init mongod start 

En respuesta a:

 ~: service mongod start service: This command still works, but it is deprecated. Please use launchctl(8) instead. service: failed to start the 'mongod' service 

Y si bash:

 ~: launchctl start mongod launchctl start error: No such process 

Así que, obviamente, me estoy equivocando un poco. El siguiente paso parece ser escribir caracteres aleatorios hasta que algo funcione. El comando que funciona es: mongod --quiet & no estoy seguro, tal vez esa es la forma en que se supone que debes hacerlo? ¿Tal vez debería simplemente quitar el ‘modo silencioso’ y agregar > /logs/mongo.log al final de la línea de comando?

Estoy construyendo un entorno de desarrollo en una Mac con la intención de hacer lo mismo en un servidor Linux. No estoy seguro de los comandos de Bash. Todas las demás búsquedas que hago para tratar de obtener la respuesta me dan consejos para las máquinas de Windows.

Tal vez alguien sabe la versión de Linux de los comandos?

Muchas gracias

Con versiones recientes de la edición de la comunidad mongodb, esto es sencillo.

Cuando instala vía brew, le dice qué hacer exactamente. No es necesario crear un nuevo archivo de control de inicio.

 $ brew install mongodb ==> Downloading https://homebrew.bintray.com/bottles/mongodb-3.0.6.yosemite.bottle.tar.gz ### 100.0% ==> Pouring mongodb-3.0.6.yosemite.bottle.tar.gz ==> Caveats To have launchd start mongodb at login: ln -sfv /usr/local/opt/mongodb/*.plist ~/Library/LaunchAgents Then to load mongodb now: launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist Or, if you don't want/need launchctl, you can just run: mongod --config /usr/local/etc/mongod.conf ==> Summary 🍺 /usr/local/Cellar/mongodb/3.0.6: 17 files, 159M 

Editar: ahora deberías usar los brew services start mongodb , como en la respuesta de Gergo …

Cuando instale / actualice mongodb, brew le dirá qué hacer:

Para iniciar launchd mongodb al iniciar sesión:

  ln -sfv /usr/local/opt/mongodb/*.plist ~/Library/LaunchAgents 

Entonces, para cargar mongodb ahora:

  launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist 

O bien, si no quiere / necesita launchctl, puede ejecutar:

  mongod 

Funciona perfectamente

Tap de services de Homebrew integra fórmulas con el administrador de launchctl . Agregarlo es fácil:

 brew tap homebrew/services 

A continuación, puede iniciar MongoDB con este comando:

 brew services start mongodb 

También puede usar stop o restart :

 brew services stop mongodb brew services restart mongodb 

Si tienes ganas de tener una guía de usuario sencilla para arreglar esto (como yo lo hago), entonces puedo recomendarte el mongodb pref-panel. Descripción: http://blog.mongodb.org/post/28925264384/macosx-preferences-pane-for-mongodb

En github: https://github.com/remysaissy/mongodb-macosx-prefspane

Acabo de instalar MongoDB a través de Homebrew. Al final de la consola de instalación, puede ver un resultado de la siguiente manera:

Para comenzar mongodb:

 brew services start mongodb 

O bien, si no quiere / necesita un servicio en segundo plano, simplemente puede ejecutar:

 mongod --config /usr/local/etc/mongod.conf 

Entonces, los servicios brew comienzan mongodb , lograron ejecutar MongoDB como un servicio para mí.

Eché un vistazo por el lado de Mac. Es posible que desee utilizar el instalador aquí, ya que parece que tiene toda la configuración para que se inicie automáticamente en Mac OS. El único inconveniente es que parece que está usando una versión mongo bastante antigua.

Este enlace aquí también explica la configuración para que Mongo se inicie automáticamente como un servicio en segundo plano en la Mac.

mongod –dbpath [path_to_data_directory]

Primer paso

instala mongodb en tu máquina linux con

apt install mongodb-client && apt install mongodb-server

el segundo paso es

cambie la ruta de la base de datos en lugar de la ruta predeterminada del sistema si lo desea.
haga los siguientes pasos y cámbielo por usted mismo.

 mongod --directoryperdb --dbpath /var/lib/mongodb/data/db --logpath /var/lib/mongodb/log/mongodb.log --logappend --rest 

y en tu máquina de Windows hazlo simplemente colocando una bandera de instalación. tienes que obtener un mensaje exitoso.

Atentamente…

En macOS 10.13.6 con MongoDB 4.0

No pude conectarme a localhost desde el shell de mongo

Empecé MongoDB con:

mongod –config /usr/local/etc/mongod.conf

Descubrí que el ‘mongod.conf’ tenía:

bindIp: 127.0.0.1

Cambiar mi conexión de JavaScript de localhost a 127.0.0.1 y funcionó bien.

Lo mismo estaba ocurriendo con MongoDB Compass también.