[mongodb] mongodb 로컬 서버를 시작할 수 없습니다

mongodb를 처음 사용합니다.. mongodb 로컬 서버를 mongod명령으로 실행하려고 시도 하면 실행에 실패 하고이 오류가 발생했습니다.

/usr/lib/mongodb/mongod --help for help and startup options
Sat Jun 25 09:38:51 MongoDB starting : pid=1782 port=27017 dbpath=/data/db/ 32-bit

** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
**       see http://blog.mongodb.org/post/137788967/32-bit-limitations

Sat Jun 25 09:38:51 db version v1.6.3, pdfile version 4.5
Sat Jun 25 09:38:51 git version: nogitversion
Sat Jun 25 09:38:51 sys info: Linux vernadsky 2.6.24-27-server #1 SMP Fri Mar 12 01:45:06 UTC 2010 i686 BOOST_LIB_VERSION=1_42
Sat Jun 25 09:38:51 [initandlisten] *** warning: spider monkey build without utf8 support.  consider rebuilding with utf8 support
Sat Jun 25 09:38:51 [initandlisten] waiting for connections on port 27017
Sat Jun 25 09:38:51 [initandlisten] listen(): bind() failed errno:98 Address already in use for socket: 0.0.0.0:27017
Sat Jun 25 09:38:51 [initandlisten]   addr already in use
Sat Jun 25 09:38:51 [initandlisten] now exiting
Sat Jun 25 09:38:51 dbexit:

Sat Jun 25 09:38:51 [initandlisten] shutdown: going to close listening sockets...
Sat Jun 25 09:38:51 [initandlisten] shutdown: going to flush oplog...
Sat Jun 25 09:38:51 [initandlisten] shutdown: going to close sockets...
Sat Jun 25 09:38:51 [initandlisten] shutdown: waiting for fs preallocator...
Sat Jun 25 09:38:51 [initandlisten] shutdown: closing all files...
Sat Jun 25 09:38:51     closeAllFiles() finished

Sat Jun 25 09:38:51 [initandlisten] shutdown: removing fs lock...
Sat Jun 25 09:38:51 dbexit: really exiting now

mongod.lock파일 삭제를 시도했습니다 … 실행했습니다 mongod --repair.. mongod.lock파일에 대한 권한도 변경했습니다 .

그러나 아무것도 작동하지 않는 것 같습니다. 같은 오류가 계속 나타납니다. 어떻게해야합니까?

또한 git 버전 1.7.4.1을 설치했지만 오류에 nogitversion이 표시됩니다.



답변

시험:

sudo service mongod stop
sudo mongod

현재 활성 mongodb 서비스를 중지하여 새 서비스를 시작할 수 있도록


답변

그것이 원인이 같은 -9 신호를 사용하여 프로세스를 종료하지 마십시오 손상 : http://www.mongodb.org/display/DOCS/Starting+and+Stopping+Mongo#StartingandStoppingMongo-SendingaUnixINTorTERMsignal

사용 sudo killall -15 mongod하는 대신


답변

안드레아스 정 :

“6 월 25 일 토요일 09:38:51 [initandlisten] listen () : bind () 실패 errno : 98 소켓에 이미 사용중인 주소 : 0.0.0.0:27017

자기 말하기입니다.

mongod의 다른 인스턴스가 이미 실행 중이며 MongoDB 기본 포트 인 27017을 할당 중입니다.

다른 프로세스를 종료하거나 다른 포트를 사용하십시오. “

이 경우 다음 명령을 입력하십시오

ps wuax | grep mongo

다음과 같은 것이 보일 것입니다

User           31936   0.5 0.4 2719784 35624   ?? S     7:34pm   0:09.98 mongod
User           31945   0.0 0.0 2423368   184 s000 R+   8:24pm   0:00.00 grep mongo

이제 mongod 인스턴스에 대해 kill 명령을 입력하십시오 (이 경우 31936).

kill 31936


답변

6 월 25 일 토요일 09:38:51 [initandlisten] listen () : bind () 실패 errno : 98 소켓에 이미 사용중인 주소 : 0.0.0.0:27017

자기 말하기입니다.

mongod의 다른 인스턴스가 이미 실행 중이며 MongoDB 기본 포트 인 27017을 할당 중입니다.

다른 프로세스를 종료하거나 다른 포트를 사용하십시오.


답변

mongodb 포트를 실행중인 프로세스를 netstat에서 찾으십시오 (27017).

명령:

sudo netstat -tulpn | grep :27017

출력은 다음과 같습니다.

tcp        0      0 0.0.0.0:27017           0.0.0.0:*
LISTEN      6432/mongod

제 경우에는 “6432”가 pid이므로 귀하의 경우와 다를 수 있습니다. 그런 다음 다음 명령을 사용하여 해당 프로세스를 종료하십시오.

sudo kill <pid>

그게 다야!


답변

사용하다:

sudo killall mongod

서버가 중지됩니다.

다음으로 다시 시작하십시오 mongod.

sudo service mongod restart

작동해야합니다.


답변

이미 프로세스가 실행 중입니다. 당신은 명령으로 그것을 죽일 수 있습니다 :

killall mongod