Mongodb
MongoDB — 全域初始化失敗:無法打開“/var/log/mongodb/mongod-config.log”
我正在嘗試為 mongodb 分片設置配置伺服器。我創建了一個特定的配置文件,該文件設置為登錄到
/var/log/mongodb/mongod-config.log
.當我執行時
mongod --config <path-to-config-file>
,我收到此錯誤:`F CONTROL [main] Failed global initialization: FileNotOpen: Failed to open "/var/log/mongodb/mongod-config.log"`
當我執行相同的命令但使用 時
sudo
,它執行但沒有輸出。但是當我嘗試在我的配置文件指定的埠(27019)上啟動 mongo shell 時,我得到了這個:
MongoDB shell version v3.6.4 connecting to: mongodb://127.0.0.1:27019/test 2018-05-01T03:13:13.399+0000 W NETWORK [thread1] Failed to connect to 127.0.0.1:27019, in(checking socket for error after poll), reason: Connection refused 2018-05-01T03:13:13.400+0000 E QUERY [thread1] Error: couldn't connect to server 127.0.0.1:27019, connection attempt failed : connect@src/mongo/shell/mongo.js:251:13 @(connect):1:6 exception: connect failed
我只是在關注MongoDB 分片文件
我在這裡看過一些以前的文章,其中一個是同樣的問題。那裡沒有解決方案,但我想再試一次,看看是否有人對此有解決方案。
不知道我是否錯過了什麼或問題是什麼……
所以,我想出了我自己的問題。
首先,問題是因為我為配置伺服器使用了不同的埠 27019,所以我需要從防火牆打開該埠。
其次,我將配置文件中的 dbPath 從更改為
/var/lib/mongodb
,/data/db
因為這是 mongodb 儲存數據的預設路徑。確保
sudo service mongod restart
追趕。完成後,我可以使用我的特定配置文件啟動 mongod:
sudo mongod --config <path-to-config-file>
關鍵是包括
sudo
我。這解決了以下問題:F CONTROL [main] Failed global initialization: FileNotOpen: Failed to open "/var/log/mongodb/mongod-config.log"
執行命令後,我看到 mongod 已在我的虛擬機 (vm) 上啟動,現在我可以從另一台機器連接到所述 vm 的 mongo shell:
mongo <ip_address_of_said_vm>:27019