2013-05-06 94 views
3

我是web開發新手,我想開始使用一些RoR(使用機車CMS)。無法運行Mongo shell(Mac)

機車要求的一件事是擁有Mongodb。我用這個鏈接安裝使用自制軟件http://docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/

它安裝正常,但後來我不能運行它!

當我輸入 '蒙戈' 上端子I得到以下輸出:

"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,我已經叫一個文件夾數據(其充當amongodb數據庫,這是它應該是什麼?)的根(路徑:/數據)的數據文件夾的所有權:

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

5.Checking如果端口是免費:lsof的-i:270 17。我也嘗試使用activity montior檢查正在運行的mongo進程,並發現zilch!

No output 

6.我也試過:mongo - 修復。 Dint幫助!

我已經在這一段時間了,我已經看到了大多數在stackoverflow上的迴應,並搜索周圍找到一個解決方案,但迄今沒有任何幫助!

UPDATE:

當我試圖啓動蒙戈外殼,我漸漸從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爲特定的文件夾和殼啓動!

雖然我仍然得到一個警告,當它啓動爲:

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 

任何想法,我怎麼能沉默這些警告?

回答

2

要獲取所需的信息以確定故障原因,您需要在/usr/local/var/log/mongodb/mongo.log試圖啓動時查看(併發布給我們)輸出。

但是,失敗的最常見原因是缺少缺省數據庫路徑 - 在/data/db。要麼創建該文件夾(並且不要忘記確保用戶有權讀取/寫入該文件夾),要麼使用--dbpath選項指定不同的路徑。

更新:自從您發現後,日誌文件上的權限不正確可能會導致此問題,方式與數據路徑上的權限不同。

在警告方面,你需要的信息是在這裏:

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不承受重負荷。所以,如果這是一個開發環境,除非你計劃進行負載測試,你應該沒事

+0

亞當,謝謝你的迴應!我按照你的意見查找了mongo.log,它的確有竅門!似乎我的日誌文件位於其他地方,它有權限(我用我的發現更新了我的問題)。雖然仍有警告!請看看我更新的問題! – Sagar 2013-05-06 08:12:35