无法在Mac OS X上运行mongod

问题描述:

我已使用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应用程序中使用蒙戈类。是否由一些端口冲突引起?有没有解决这个问题的方法?

如果看到异常,它说:

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

我认为它需要管理员权限。

我用过:sudo mongod,它对我来说工作得很好。请尝试。