code

몽고드브를 시작할 수 없는 이유는 무엇입니까?

starcafe 2023. 6. 22. 22:06
반응형

몽고드브를 시작할 수 없는 이유는 무엇입니까?

이것이 오류입니다.

(mysite)zjm1126@zjm1126-G41MT-S2:~$ /usr/local/mongodb/bin/mongod 
/usr/local/mongodb/bin/mongod --help for help and startup options
Wed Apr 27 10:02:41 [initandlisten] MongoDB starting : pid=2652 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
**       with --dur, the limit is lower

Wed Apr 27 10:02:41 [initandlisten] db version v1.8.1, pdfile version 4.5
Wed Apr 27 10:02:41 [initandlisten] git version: a429cd4f535b2499cc4130b06ff7c26f41c00f04
Wed Apr 27 10:02:41 [initandlisten] build sys info: Linux bs-linux32.10gen.cc 2.6.21.7-2.fc8xen #1 SMP Fri Feb 15 12:39:36 EST 2008 i686 BOOST_LIB_VERSION=1_37
Wed Apr 27 10:02:41 [initandlisten] exception in initAndListen std::exception: Unable to create / open lock file for lockfilepath: /data/db/mongod.lock errno:13 Permission denied, terminating
Wed Apr 27 10:02:41 dbexit: 
Wed Apr 27 10:02:41 [initandlisten] shutdown: going to close listening sockets...
Wed Apr 27 10:02:41 [initandlisten] shutdown: going to flush diaglog...
Wed Apr 27 10:02:41 [initandlisten] shutdown: going to close sockets...
Wed Apr 27 10:02:41 [initandlisten] shutdown: waiting for fs preallocator...
Wed Apr 27 10:02:41 [initandlisten] shutdown: closing all files...
Wed Apr 27 10:02:41 closeAllFiles() finished
Wed Apr 27 10:02:41 [initandlisten] shutdown: removing fs lock...
Wed Apr 27 10:02:41 [initandlisten] couldn't remove fs lock errno:9 Bad file descriptor
Wed Apr 27 10:02:41 dbexit: really exiting now

MongoDB를 시작하는 사용자 계정은 다음에 대한 쓰기 권한이 있어야 합니다./data/db/디렉터리...당신은 이것을 그렇게 바꿀 수 있습니다...

이 명령은 의 소유자를 변경합니다./data/db/사용 중인 사용자 계정으로 이동합니다.

$ sudo chown `id -u` /data/db
$ mongod 

MongoDB를 시작하는 동안에도 문제가 발생하면 삭제해야 합니다./data/db/mongod.lock그런 다음 데이터베이스에서 복구를 실행합니다.

mongod --repair

복구 명령에 대한 자세한 내용은 여기를 참조하십시오.

어느 하나sudo로의 요청.mongod또는 의 권한을 변경합니다./data/db/mongod.lock사용자가 쓰기 가능하도록 합니다.

저는 몽고비에 대한 추태를 부리며 이 문제를 해결했습니다.

sudo chown -R mongodb:mongodb /data

왜냐하면, 당신이 할 때,

ls -lrth /data
drwxr-xr-x 2 mongodb mongodb  6 Jan  5 02:31 journal
-rwxr-xr-x 1 mongodb mongodb  0 Jan  5 02:31 mongod.lock
drwxr-xr-x 2 ubuntu  root    24 May  8 20:02 configdb

이게 도움이 되길 바랍니다.

실행 중인 mongod 인스턴스가 없는지 확인합니다.

이것이 저에게 효과가 있었습니다.단말기에서 이렇게 보고 처음에 백그라운드에서 실행 중인 인스턴스가 있는지 확인했습니다: psaux | grep mongo

그리고 저는 거기에 있는 것을 보았습니다: 48358 블라블몽고드.

그래서 죽였습니다: 48358을 죽이세요.

그리고 나서 잘 작동할 수 있었습니다.

자, 내가 어떻게 풀었는지.

  1. 잠금 파일을 제거한 후 다음을 사용하여 복구했습니다.sudo mongod --repair --config=/etc/mongodb.conf그 후에 mongod.lock 권한을 확인했습니다.ls -l /var/lib/mongodb/mongod.lock
  2. 그것은 잠금 파일의 root is 소유자를 보여주고 있었고, 그래서 나는 그것을 다시 mongodb로 변경했습니다.sudo chown mongodb:mongodb /var/lib/mongodb/*
  3. 그런 다음 다음 다음을 사용하여 mongodb 서비스를 다시 시작합니다.sudo service mongodb restart

Brew와 함께 표준 설치 후 Mac OSX Yosemite에서:

sudo chown -R `id -u` /data/db

시작되지 않을 경우(행잉 및 차단 연결이 없는지 점검):

lsof -i:27017

출력은 다음과 같습니다.

COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
mongod  16948 andi    8u  IPv4 0x883a71bc9412939d      0t0  TCP *:27017 (LISTEN)

을 소중히 여기다PID실행:

kill -9 <PID>

이제 mongo 서버를 시작할 수 있습니다.mongod그런 다음 별도의 콘솔 창에서 연결합니다.mongo

복제본 집합의 구성원을 복구하려면 위에서 설명한 방법을 사용하지 마십시오.대신 MongoDB의 ReSync 설명서에 설명된 절차를 사용합니다.

언급URL : https://stackoverflow.com/questions/5798549/why-cant-i-start-the-mongodb

반응형