ProgramingTip

Mac OS X에서 mongod를 중지하는 방법은 무엇입니까?

bestdevel 2020. 10. 25. 12:44
반응형

Mac OS X에서 mongod를 중지하는 방법은 무엇입니까?


mongo 1.8.2를 실행 중이며 Mac에서 완전히 삭제하는 방법을 확인합니다.

우분투 서버에서 다음을 사용하여 mongo 셸에서 mongo를 깨끗하게 종료 할 수 있습니다.

> use admin
> db.shutdownServer()

하지만 내 Mac에서는 mongod 프로세스를 죽이지 않습니다. 출력은 종료되어야한다고 표시됩니다. i ps -ef | grep mongo는 나에게 활성 프로세스를 보여줍니다. 또한 여전히 mongo 셸을 종료하지 않은 것처럼 내 db를 쿼리 할 수 ​​있습니다.

내 db.shutdownServer ()의 출력은 다음과 달라집니다.

MongoDB shell version: 1.8.2
connecting to: test
> use admin                  
switched to db admin
> db.shutdownServer()
Tue Dec 13 11:44:21 DBClientCursor::init call() failed
Tue Dec 13 11:44:21 query failed : admin.$cmd { shutdown: 1.0 } to: 127.0.0.1
server should be down...
Tue Dec 13 11:44:21 trying reconnect to 127.0.0.1
Tue Dec 13 11:44:21 reconnect 127.0.0.1 failed couldn't connect to server 127.0.0.1
Tue Dec 13 11:44:21 Error: error doing query: unknown shell/collection.js:150

난 그냥 프로세스를 죽일 수 있다고 생각합니다.


launchctl이 mongod 인스턴스를 관리하기 때문입니다. mongod 인스턴스를 시작하고 먼저 먼저 언로드하십시오.

launchctl unload -w ~/Library/LaunchAgents/org.mongodb.mongod.plist

그런 다음 mongod를 수동으로 시작하십시오.

mongod -f path/to/mongod.conf --fork

mongod.conf 위치는 ~/Library/LaunchAgents/org.mongodb.mongod.plist.

그 후에는 db.shutdownServer()작동합니다.

2014 년 2 월 22 일 추가됨 :

homebrew를 통해 mongodb를 설치 한 경우 homebrew를 사용할 수 brew services있습니다. 현재 실행중인 서비스를 표시 비용 :

brew services list

mongodb를 시작 광고주 :

brew services start mongodb

mongodb가 이미 실행중인 경우 중지 주문 :

brew services stop mongodb

최신 정보

edufinn이 주석에서 지적했듯이 brew services이제 사용자 정의 명령으로 사용할 수 있으며 다음 명령으로 수 있습니다 brew tap gapple/services.


homebrew와 함께 mongodb를 설치하기 더 쉬운 방법이 있습니다.

launchctl로 mongo 작업 장비 :

launchctl list | grep mongo

몽고 작업 중지 :

launchctl stop <job label>

(저에게이 launchctl stop homebrew.mxcl.mongodb)

mongo 작업 시작 :

launchctl start <job label>

간단한 방법은 mongodb의 프로세스 ID를 가져 오기 죽이는 것입니다. 데이터베이스에 손상을 줄 수 있으므로 kill -9 pid를 사용하지 않습니다.

그래서, 1. mongodb의 pid를 얻으십시오

$ pgrep mongo

몽고의 pid를 내포 할 것입니다.

$ 죽이기

kill -15도 사용할 수 있습니다.


port명령 자체를 사용하여 MongoDB 서버를 중지하는 것을 선호 합니다.

sudo port unload mongodb

그리고 다시 시작합니다.

sudo port load mongodb

다음 문서를 확인하세요.

http://www.mongodb.org/display/DOCS/Starting+and+Stopping+Mongo#StartingandStoppingMongo-SendingaUnixINTorTERMsignal

터미널에서 시작했다면 괜찮을 것입니다 ctrl + 'c'-이것은 깨끗한 종료를 할 것입니다.

그러나 launchctl을 사용하는 경우 설치 방법에 따라 달라지는 특정 지침이 있습니다.

Homebrew를 사용하는 경우 launchctl stop homebrew.mxcl.mongodb


이것은 오래된 질문이지만 검색하면서 찾은 질문입니다.

함께 설치 brew한 경우 솔루션은 실제로 다음과 같습니다.

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

참고 URL : https://stackoverflow.com/questions/8495293/whats-a-clean-way-to-stop-mongod-on-mac-os-x

반응형