[英]MongoDB Failing to Start - ***aborting after fassert() failure
我是 Ubuntu(Linux tbh)的新手。 我在啟動 MongoDB 服務時遇到了問題。 我想使用 Ruby on Rails 和 MongoDB 創建 Web 應用程序,但 mongo 似乎無法啟動。
我在 Ubuntu 上遵循了這個 MongoDB 安裝,所有安裝都沒有問題,直到我得到sudo service mongod start
mongod.log
2016-01-01T10:58:15.545+0000 I CONTROL ***** SERVER RESTARTED *****
2016-01-01T10:58:15.548+0000 I CONTROL [initandlisten] MongoDB starting : pid=3868 port=27017 dbpath=/var/lib/mongodb 64-bit host=damian-CX61-0NC-CX61-0ND-CX61-0NF-CX61-0NE
2016-01-01T10:58:15.548+0000 I CONTROL [initandlisten] db version v3.0.8
2016-01-01T10:58:15.548+0000 I CONTROL [initandlisten] git version: 83d8cc25e00e42856924d84e220fbe4a839e605d
2016-01-01T10:58:15.548+0000 I CONTROL [initandlisten] build info: Linux ip-10-187-89-126 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 BOOST_LIB_VERSION=1_49
2016-01-01T10:58:15.548+0000 I CONTROL [initandlisten] allocator: tcmalloc
2016-01-01T10:58:15.548+0000 I CONTROL [initandlisten] options: { config: "/etc/mongod.conf", net: { bindIp: "127.0.0.1", port: 27017 }, storage: { dbPath: "/var/lib/mongodb", journal: { enabled: true } }, systemLog: { destination: "file", logAppend: true, path: "/var/log/mongodb/mongod.log" } }
2016-01-01T10:58:15.567+0000 E NETWORK [initandlisten] Failed to unlink socket file /tmp/mongodb-27017.sock errno:1 Operation not permitted
2016-01-01T10:58:15.567+0000 I - [initandlisten] Fatal Assertion 28578
2016-01-01T10:58:15.567+0000 I - [initandlisten]
***aborting after fassert() failure
那么我做錯了什么或其不同的問題?
kometen的解決方案
文件 /tmp/mongodb-27017.sock 是否存在? 如果是這樣,請嘗試刪除它,即。 'sudo rm /tmp/mongodb-27017.sock'。
該問題也可能是由於 mongodb 用盡了所有磁盤空間。 我就是這樣。 您可以使用以下命令安裝 ncdu: sudo apt install ncdu
這將幫助您查看磁盤使用情況。 使用命令: ncdu -x /
從/var/lib/mongodb/中刪除不需要的數據庫
sudo mongod
(@João Bortolosso 建議)
之后(@fresz 建議):
sudo rm /tmp/mongodb-27017.sock
在mac上工作!
如果您使用 Ubuntu,請嘗試:
sudo mongod
對我來說,這是因為文件夾中的數據不正確:'/data/db'
對我有用的解決方案:刪除“/data/db”中的所有文件
mongo --shell
它在 ubuntu 上對我有用
我們在生產中收到相同的消息並且服務沒有重新啟動
{"t":{"$date":"2021-08-18T15:18:27.834+00:00"},"s":"F", "c":"-", "id":23092, "ctx":"initandlisten","msg":"\n\n***aborting after fassert() failure\n\n"}
所以我運行了這個命令(授予 mongodb 用戶權限)
sudo chown mongodb:mongodb mongodb-27017.sock
並啟動服務
sudo systemctl start mongod
現在 mongo 已經啟動並運行了。 ;)
感謝我們的 StackOverflow 貢獻者 Rajith K
他在 MongoDB 3.0 中給出了“無法取消鏈接套接字文件”錯誤的答案
在您的電腦上重新安裝mongodb服務器是最好的選擇。 之前使用/保存的所有數據庫在重新安裝后仍保留存儲。
您需要刪除 MongoDB 臨時文件
sudo rm /tmp/mongodb-27017.sock
對於每次重啟后出現此錯誤的任何人,您需要在啟動時停止 mongod.service
sudo systemctl disable mongod.service
名稱mongod.service
可能稍后會更改,因此只需編寫 mongo 並按 tab 即可自動完成
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.