2014-09-27 256 views
2

我已使用homebrew安裝mongodb。如預期中端,但是當我在終端運行mongod它返回的mongo運行命令:無法在Mac OS X上運行mongod

mongod --help for help and startup options 
2014-09-27T12:55:42.705+0330 [initandlisten] MongoDB starting : pid=3704 port=27017 dbpath=/data/db 64-bit host=Your-MacBook-Pro.local 
2014-09-27T12:55:42.705+0330 [initandlisten] 
2014-09-27T12:55:42.705+0330 [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000 
2014-09-27T12:55:42.705+0330 [initandlisten] db version v2.6.4 
2014-09-27T12:55:42.705+0330 [initandlisten] git version: nogitversion 
2014-09-27T12:55:42.705+0330 [initandlisten] build info: Darwin Your-MacBook-Pro.local 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_X86_64 x86_64 BOOST_LIB_VERSION=1_49 
2014-09-27T12:55:42.705+0330 [initandlisten] allocator: tcmalloc 
2014-09-27T12:55:42.705+0330 [initandlisten] options: {} 
2014-09-27T12:55:42.706+0330 [initandlisten] exception in initAndListen: 10309 Unable to create/open lock file: /data/db/mongod.lock errno:13 Permission denied Is a mongod instance already running?, terminating 
2014-09-27T12:55:42.706+0330 [initandlisten] dbexit: 
2014-09-27T12:55:42.706+0330 [initandlisten] shutdown: going to close listening sockets... 
2014-09-27T12:55:42.706+0330 [initandlisten] shutdown: going to flush diaglog... 
2014-09-27T12:55:42.706+0330 [initandlisten] shutdown: going to close sockets... 
2014-09-27T12:55:42.706+0330 [initandlisten] shutdown: waiting for fs preallocator... 
2014-09-27T12:55:42.706+0330 [initandlisten] shutdown: lock for final commit... 
2014-09-27T12:55:42.706+0330 [initandlisten] shutdown: final commit... 
2014-09-27T12:55:42.706+0330 [initandlisten] shutdown: closing all files... 
2014-09-27T12:55:42.706+0330 [initandlisten] closeAllFiles() finished 
2014-09-27T12:55:42.706+0330 [initandlisten] shutdown: removing fs lock... 
2014-09-27T12:55:42.706+0330 [initandlisten] couldn't remove fs lock errno:9 Bad file descriptor 
2014-09-27T12:55:42.706+0330 [initandlisten] dbexit: really exiting now 

所以我不能在我的PHP應用程序中使用蒙戈類。是否由一些端口衝突引起?有沒有解決這個問題的方法?

回答

4

如果看到異常,它說:

exception in initAndListen: 
10309 Unable to create/open lock file: /data/db/mongod.lock 
errno:13 Permission denied Is a mongod instance already running?, terminating 

要麼mongod的情況下無法創建鎖定文件或鎖定文件中已存在的位置,以及當前實例不能弄個,由於之前運行的mongod實例不正確的終止/關閉。

要解決此問題,請手動刪除/data/db/mongod.lock(如果存在並重新啓動mongod服務)。

sudo rm /data/db/mongod.lock 

如果鎖文件不存在,給閱讀/data/db目錄/寫權限並重啓實例。

+1

謝謝,看來我沒有爲db文件夾權限設置權限。 – Nojan 2014-09-27 14:49:34

+0

@ NOjAN歡迎。 – BatScream 2014-09-27 14:58:12

0

我認爲它需要管理員權限。

我用過:sudo mongod,它對我來說工作得很好。請嘗試。