我是网络开发的新手,我想开始使用一些RoR(使用机车CMS).
机车要求的一件事就是拥有Mongodb.我按照此链接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"
mongo.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.Typing mongod –help给出以下警告:
* WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
4.我在根目录中有一个名为data(作为fromodb数据库,它应该在哪里?)的文件夹(PATH:/ data)数据文件夹的所有权:
"drwxr-xr-x 3 username wheel 102 Apr 23 21:38 data"
5.检查端口是否空闲:lsof -i:27017.我还尝试使用活动监视器检查正在运行的mongo进程并找到了zilch!
No output
我也尝试过:mongo –repair. Dint帮忙!
我已经坚持了一段时间,我已经查看了stackoverflow上的大多数响应并搜索了解决方案,但到目前为止没有任何帮助!
更新:
当我试图启动mongo shell时,我得到了以下l
来自mongo.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选项指定其他路径.
更新:正如您发现的那样,对日志文件的错误权限可能会导致问题,与数据路径上的错误权限类似.
就警告而言,您需要的信息如下:
只是,这是一个警告 – 你可以运行MongoDB而不会出现这些限制的问题,只要它没有负载很重.因此,如果这是一个开发环境,除非您计划进行负载测试,否则您应该没问题