簡體   English   中英

無法連接到遠程 mongodb 服務器

[英]Cannot connect to remote mongodb server

我將 bindIp 設置更改為

bindIp: 127.0.0.1, 0.0.0.0

在托管在 Linode 上的 ubuntu 服務器上的 mongod.conf 中,並重新啟動了 mongod,狀態看起來沒問題。

我在ufw上打開了mongodb端口

sudo ufw 狀態狀態:活動

行動自 - ------ ---- 22/tcp ALLOW Anywhere 10000
允許任何地方 Nginx Full
允許任何地方 3333
允許任何地方 27017
允許任何地方 22/tcp (v6)
允許任何地方 (v6) 10000 (v6)
允許任何地方 (v6) Nginx Full (v6)
允許任何地方 (v6) 3333 (v6)
允許任何地方 (v6) 27017 (v6)
允許任何地方 (v6)

從我的 mac 連接到它會引發錯誤:

mongo mongodb://admin:secret@ubuntuipaddress/fielddb?authSource=admin MongoDB shell version v3.6.2 連接到:mongodb://ubuntuipaddress/fielddb?authSource=admin 2018-04-08T13:47:32.212 W NETWORK [thread1]無法連接到 ubuntuipaddress:27017,在(輪詢后檢查套接字錯誤),原因:連接被拒絕 2018-04-08T13:47:32.214 E QUERY
[thread1] 錯誤:無法連接到服務器 ubuntuipaddress:27017,連接嘗試失敗:connect@src/mongo/shell/mongo.js:251:13 @(connect):1:6 異常:連接失敗

如何解決這個問題?

為在 Ubuntu 上運行的 Mongodb 啟用遠程訪問的基本步驟是:

  1. 在 Mongodb 中設置至少一個用戶(具有 root 權限的管理員)
  2. 編輯配置文件(即sudo nano etc/mongodb.conf)
  3. 確保
bind_ip = 0.0.0.0 
port = 27017 
auth = true 

已設置(且未注釋)

  1. 在 UFW 中添加防火牆規則以允許來自您的遠程 IP 地址(或任何地方)的 27017

你應該很高興去。

禁用防火牆並嘗試查看是否可以連接,如果可以,則這是您的 fw 規則。 先試試這個,看看這是否有幫助。

問題是 mmongod.conf 中的 bindIP 設置錯誤。 更改為:

bindIp: 127.0.0.1,ip_address_of_host_running_mondgod

解決了這個問題。 將 ip_address_of_host_running_mondgod 替換為運行 mongod 的主機的 ip 地址,如 137.142.177.4

暫無
暫無

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

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