繁体   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