deploy - ¿Cuál es la forma correcta de iniciar un servicio de mongod en Linux/OS X?
start mongodb linux (8)
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 intento:
~: 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
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...
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í.
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
Eché un vistazo por el lado de Mac. Es posible que desee utilizar el instalador here 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 here también explica la configuración para que Mongo se inicie automáticamente como un servicio en segundo plano en la Mac.
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
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
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
mongod --dbpath [path_to_data_directory]