我似乎無法連接到我的本地計算機上作爲Windows服務安裝的Mongo DB。我還構建了一個與MongoDB通信的小WPF應用程序。 的errormessage的:如何修復我的mongodb?
錯誤:無法連接到服務器127.0.0.1殼/ mongo.js:8 例外:連接失敗檢測 不正常關機。
我似乎無法連接到我的本地計算機上作爲Windows服務安裝的Mongo DB。我還構建了一個與MongoDB通信的小WPF應用程序。 的errormessage的:如何修復我的mongodb?
錯誤:無法連接到服務器127.0.0.1殼/ mongo.js:8 例外:連接失敗檢測 不正常關機。
我通過閱讀手冊瞭解了它。 – marko 2012-03-31 07:04:36
閱讀是好:) – 2012-03-31 07:55:11
如果修復失敗,並且mongod響應一個損壞的數據文件的異常,請刪除mongd.lock文件以及損壞的mongo數據文件並再次運行mongod --repair。這種方法顯然會丟失數據,但至少您可以再次啓動mongod。 – chromaloop 2016-10-21 17:39:29
更快:
sudo rm /data/db/mongod.lock
sudo mongod --dbpath /data/db --repair
sudo mongod --dbpath /data/db
它幫助,謝謝! – Saani 2015-10-16 06:26:29
謝謝!在--repair標誌中使用--dbpath選項對我有用。我遇到了與「不潔的關閉」(不管那意味着什麼)相同的問題,並且當我嘗試修復時,出現錯誤,指出未找到默認的「\ data \ db」目錄。這是預期的,因爲我正在使用一個單獨的位置來存儲我的日誌和數據。我只是將--dbpath設置爲我的自定義位置並工作。我還沒有確認,但我的猜測是,我可以使用帶--repair標誌的--config「mongodb \ mongod.cfg」來讓MongoDB使用我的自定義設置。奇怪的是,它不是從修復文件中讀取的。 – 2016-05-16 23:48:24
它的工作原理..謝謝+1 – 2016-06-17 12:28:25
如果你做修復手術以root用戶的肯定之後,將所有數據庫文件是由MongoDB的用戶所擁有,否則MongoDB的將無法啓動
chown -R mongodb:mongodb /data/db
rm /data/db/mongod.lock
/etc/init.d/mongodb start
$ mongo
> use dbname
> db.repairDatabase()
注意 - 在修復數據庫命令的db.repairDatabase()輔助程序的shell中,修復功能也可用。
也http://docs.mongodb.org/manual/tutorial/recover-data-following-unexpected-shutdown/參見:
第一行是否是一個腳本示例?然後用4個空格前置它們來格式化爲代碼而不是列表。 – Artemix 2013-10-14 12:25:27
我做了相同的應用程序架構:WPF應用程序和MongoDB爲「本地數據庫」和我的結論是因爲這個問題MongoDB是不適合這種應用,但僅限於高可靠的服務器端平臺。否則你會經常被這個問題訪問。最好去替代LiteDb或Mini-Biggy。 – 2017-11-28 04:03:14