유닉스 (Mac OSX)의 백그라운드에서 mongod를 어떻게 실행할 수 있습니까?


50

나는 항상 존재하는 것으로서 백그라운드에서 mongod를 실행하고 싶습니다. 가장 좋은 방법은 무엇입니까? 시작시 MySQL을 실행할 수있는 방식과 비슷하며 항상 백그라운드에서 실행됩니다. 어쩌면 그것은 단지 bash 스크립트 일지 모르지만 더 좋은 방법이 있다면 들리는 것이 좋을 것입니다. 그것이 bash라면-어떻게 보일까요? 감사.


1
npm install pm2 -g+ pm2 start mongod+ pm2 save는 세션에서 백그라운드 프로세스를 계속 실행하는 데 유용한 교차 플랫폼 방법입니다.
Jthorpe

답변:


81

MongoDB 데몬 (mongod)에는 백그라운드에서 서버를 실행하는 명령 줄 옵션이 있습니다.

--fork

이 명령 행 옵션을 사용하려면 메시지를 로그 할 파일도 지정해야합니다 (현재 콘솔을 사용할 수 없으므로). 이 명령의 예는 다음과 같습니다.

mongod --fork --logpath /var/log/mongod.log

이것을 /etc/init.d/mongod bash 스크립트 파일에 넣을 수 있습니다. 그런 다음 시작시 서비스를 실행하려면 /etc/rc#.d/ 내에 표준 심볼릭 링크 (S ## & K ##)를 만드십시오. 다음은 이 프로세스를보다 자세하게 설명 하는 자습서 입니다. "초기 스크립트 활성화"섹션으로 스크롤하십시오. 또한 다음과 같은 명령을 실행할 수 있다는 이점이 있습니다.

service mongod status
service mongod start
service mongod stop

Windows에서는이 작업을 수행 할 수 없습니다.
Malik Brahimi


./bin/mongod --fork --logpath = logs / mongod.log --dbpath = data / db
Selvakumar Esra

추가 로그 파일을 생성하지 않으려면 --syslog모든 것이 시스템 로그에 기록되는 옵션도 있습니다 .
Markus Graf

@Jesse Webb. 그리고 ssh 연결과 같이 로그 아웃 한 후에도 계속 실행됩니까?
Miguel

11

Mac을 사용 중이므로 Homebrew 를 사용하여 MongoDB를 설치 해야합니다 (아직 Homebrew를 아직 설치하지 않은 경우 설치해야 함).

brew install mongodb

설치된 버전의 이름이이라고 가정 2.0.6-x86_64합니다. 그런 다음 생성 한 LaunchAgent plist 파일을 추가하십시오.

mkdir -p ~/Library/LaunchAgents
cp /usr/local/Cellar/mongodb/2.0.6-x86_64/homebrew.mxcl.mongodb.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist

이 시작됩니다 mongod이제 백그라운드에서 모든 시간을 당신은 당신의 컴퓨터를 다시 시작합니다.


1
업데이트 :mkdir -p ~/Library/LaunchAgents cp /usr/local/Cellar/mongodb/3.2.10/homebrew.mxcl.mongodb.plist ~/Library/LaunchAgents launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
helsont


0


일반적으로 백그라운드에서 실행하려면 nohup some_command로 시작
하십시오. 터미널은 닫거나 로그 아웃 한 후에도 계속 실행됩니다. sudo를 통해 다른 사용자로 시작할 수 있습니다. 시작할 때 실행하려면 init 스크립트 대체에 추가하십시오 (이것이 무엇인지 모릅니다). nohup.out이라는 파일을 시작한 파일에 출력을 씁니다.


0

OS X에서 시작시 프로그램을 실행하는 가장 좋은 방법은 LaunchDaemon을 생성하고 ( Apple의 docs 참조 및 / System / Library / LaunchDaemons에서 Apple 제공 데몬을 살펴보십시오) / Library에 설치하는 것입니다. / LaunchDaemons. Lingon 은 .plist 파일을 만드는 데 도움을 줄 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.