簡體   English   中英

無法啟動mongodb服務

[英]Can't start mongodb service

我剛剛maledo 3.並嘗試將其作為Windows服務器運行但收到錯誤

The MongoDB 3.0 service terminated with the following service-specific error: 
Cannot create another system semaphore.

找不到有關該錯誤和mongodb的任何信息。

檢查mongodb日志。 在我的情況下,mongodb找不到mongod.cfg中的目錄

在我的情況下,它意外關閉后出現mongod.lock問題。

Detected unclean shutdown - E:\MongoDb\Databases\mongod.lock is not empty.

我刪除了E:\\ MongoDb \\ Databases \\ mongod.lock並成功啟動了mongo。

這件事發生在我身上幾次,因為我的Mac崩潰導致了Parallels和我的Mongo實例的不潔關閉。 mongod.lock不是空的。

這是在開發服務器上,所以我沒有備份。 我能夠通過使用來修復

mongod --repair --repairpath <path to your mongo data>

這里有更多說明

在Program Files中的Windows 10上安裝.msi后,我為不同的數據位置C:\\ Mongo \\ Data \\ DB創建了服務

服務安裝正確,但沒有以錯誤“無法創建另一個系統信號量”開頭,因為:

我沒有創建所需的文件夾結構。 很簡單 - 哦哦!

希望這有助於某人。

Windows中

有一種有效的方法可以解決這個問題。

首先,嘗試刪除文件夾“D:\\ mongodb \\ data”下的文件storage.bson ,或者刪除PC中的相應路徑。

如果問題仍然存在 ,請按順序嘗試以下步驟。

例如,安裝了mongoDB版本3.6,MongoDB的安裝路徑是“D:\\ Program Files \\ MongoDB”。

創建文件夾D:\\mongodb\\logs ,然后在此文件夾中創建文件mongodb.log

管理員身份運行cmd.exe,

D:\Program Files\MongoDB\Server\3.6\bin>taskkill /F /IM mongod.exe
D:\Program Files\MongoDB\Server\3.6\bin>mongod.exe --logpath D:\mongodb\logs\mongodb.log --logappend --dbpath D:\mongodb\data --directoryperdb --serviceName MongoDB --remove
D:\Program Files\MongoDB\Server\3.6\bin>mongod --logpath "D:\mongodb\logs\mongodb.log" --logappend --dbpath "D:\mongodb\data" --directoryperdb --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install

刪除文件夾“D:\\ mongodb \\ data”下的這兩個文件mongod.lockstorage.bson

然后使用管理員權限在cmd中鍵入net start MongoDB ,問題將得到解決。

還要檢查dbpath和logpath的權限。 在我的情況下,我已將mongo配置為作為網絡服務運行的服務,但是,沒有給予這些目錄的網絡服務寫訪問權。

如果這有助於其他任何人,對我而言,我在命令提示符窗口中手動啟動了mongod.exe,因此Windows服務無法在已使用的同一端口上運行mongod.exe。 衛生署!

我有同樣的問題,在我的情況下,配置是錯誤的。 來自事件查看器的這個錯誤不是很有幫助,而且大多令人困惑,所以每個人都應該首先檢查mongo日志。

光盤C上沒有足夠的空間:安裝MongoDB的地方。 制作一些空間后 - mongod.exe成功啟動。

在我的例子中,另一個MongoDB實例在同一端口的命令提示符下運行。

對我來說,在Windows 10 Pro上全新安裝MongoDB v4.0.3時,安裝無法在最后啟動mongo服務。

嘗試從命令提示符啟動mongod,指向正確的mongodb.cfg配置,給了我錯誤:

無法識別的選項:mp

我撕開配置並搜索“mp”,找到文件的最后兩行:

#snmp:
mp:

我在最后一行前面扔了一個#並再次嘗試,服務開始很好。

¯\\ _(ツ)_ /¯

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM