无法运行Mongo shell (Mac)



我是web开发的新手,我想开始使用一些RoR(使用机车CMS)。

机车要求的事情之一是有Mongodb。我使用homebrew安装以下链接http://docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/

它安装得很好,但我无法运行它!

当我在终端上输入'mongo'时,我得到以下输出:

"MongoDB shell version: 2.4.3
connecting to: test
Mon May  6 11:12:28.927 
JavaScript execution failed: 
Error: couldn't connect to server        
127.0.0.1:27017 at   src/mongo/shell/mongo.js:L112
exception: connect failed"

后台帮助调试(在终端上):

1。当我输入mongod时,我得到以下内容:

"all output going to: /usr/local/var/log/mongodb/mongo.log"

mongodb .log的所有权:

-rw-r--r--  1 username  admin  22133 May  6 11:13 mongo.log

2。当我输入mongod——fork时,我得到以下内容:

about to fork child process, waiting until server is ready for connections.
forked process: 77566
all output going to: /usr/local/var/log/mongodb/mongo.log
ERROR: child process failed, exited with error number 100

3。输入mongod——help会给出以下警告:

* WARNING: soft rlimits too low. Number of files is 256, should be at least 1000

4。我有一个名为data的文件夹(它作为mongodb数据库,这是它应该在哪里?)在根(PATH:/data)数据文件夹的所有权:

 "drwxr-xr-x   3 username  wheel       102 Apr 23 21:38 data"

5。查看端口是否空闲:lsof -i:27017。我还尝试使用活动监视器检查正在运行的mongo进程,但一无所获!

No output

6。我还试过:mongo——修理。力的帮助!

我已经在这个问题上停留了一段时间,我看过stackoverflow上的大多数回复,并四处寻找解决方案,但到目前为止没有任何帮助!

更新:

当我尝试启动mongo shell时,我得到了下面的l来自mongol . Log的日志信息:

5/6/13 1:33:27.616 PM com.apple.launchd: 
(org.mongodb.mongod[79133])          
open("/private/var/log/mongodb/output.log", ...): Permission denied

所以我为特定的文件夹做了一个chmod777, shell启动了!

虽然我仍然得到一个警告,当它启动为:

Server has startup warnings: 
Mon May  6 13:33:27.693 [initandlisten] 
Mon May  6 13:33:27.693 [initandlisten] 
** WARNING: soft rlimits too low. 
Number of files is 256, should be at least 1000

有什么办法可以让这些警告静音吗?

要获得您需要确定故障原因的信息,您需要查看(并为我们发布)/usr/local/var/log/mongodb/mongo.log在尝试启动时的输出。

然而,最常见的失败原因是缺少默认的数据库路径——在/data/db。要么创建那个文件夹(不要忘记确保你的用户有读写权限),要么用--dbpath选项指定一个不同的路径。

UPDATE:正如你已经发现的那样,日志文件上的错误权限可能导致这个问题,就像数据路径上的错误权限一样。

关于警告,您需要的信息在这里:

https://superuser.com/questions/433746/is-there-a-fix-for-the-too-many-open-files-in-system-error-on-os-x-10-7-1

只是,虽然,一个警告-你可以运行MongoDB没有这些限制的问题,只要它不是在繁重的负载下。因此,如果这是一个开发环境,除非您计划进行负载测试,否则您应该可以

相关内容

  • 没有找到相关文章

最新更新