Mongodb

Mongo 異常:重啟時連接失敗

  • January 6, 2022

我在 VMWare 上的 Ubuntu 16.04 機器上安裝了 Mongo。我使用“mongo”命令啟動它,上週沒有問題。但最近,它給出了這個錯誤:

MongoDB shell 版本:3.2.15 連接到:test 2017-08-09T09:31:33.634+0300 W NETWORK

$$ thread1 $$無法連接到 127.0.0.1:27017,在(輪詢後檢查套接字是否有錯誤),原因:errno:111 連接被拒絕 2017-08-09T09:31:33.712+0300 E QUERY $$ thread1 $$錯誤:無法連接到伺服器 127.0.0.1:27017,連接嘗試失敗:connect@src/mongo/shell/mongo.js:229:14 @(connect):1:6 異常:連接失敗

我知道如何解決它,它在這裡:https ://stackoverflow.com/questions/12831939/couldnt-connect-to-server-127-0-0-127017/34835813#34835813

但是每次我重新啟動 Ubuntu 機器時,問題都會重複。為什麼,以及如何防止每次都發生這種情況?謝謝。

編輯:問題解決了。您可以在我對 JJussi 回答的評論中看到下面的解決方案。

mongod是實際的 mongodb 守護程序什麼是數據庫。mongo只是連接到 mongod 程序的客戶端程序(在這種情況下;使用分片集群它連接到 mongos 程序)。

因此,mongod必須先執行程序mongo才能連接它。

你寫的那sudo systemctl enable mongod.service行不行了?檢查該服務是否(以某種方式)更改了名稱。只需發出命令sudo systemctl|grep -i mongo,您就可以查看它是否存在並且已啟用。如果您的 mongod 程序在重新啟動後仍未自動啟動,請檢查 /var/log/mongodb/mongodb.log (您可以使用sudo grep path /etc/mongod.conf-command 檢查該鎖定文件名)說。錯誤是什麼?修復該錯誤(可能是目錄和文件的 chown?),然後重試sudo systemctl restart mongod.service(或者服務名稱是什麼)

As MongoDB BOL Here MongoDB 實例預設將其數據文件儲存在其中/var/lib/mongodb,並使用 mongodb 使用者帳戶執行。您可以在.log files``/var/log/mongodb``/etc/mongod.conf

如果更改執行該程序的使用者,則必須修改對和目錄MongoDB的訪問控制權限,以授予該使用者對這些目錄的訪問權限。/var/lib/mongodb``/var/log/mongodb

發出以下命令以啟動 mongod:

sudo service mongod start

供您進一步參考配置文件選項

引用自:https://dba.stackexchange.com/questions/183044