无法连接到远程mongodb服务器

时间:2018-04-08 08:59:43

标签: linux mongodb ubuntu linode

我将bindIp设置更改为

  

bindIp:127.0.0.1,0.0.0.0

在我在Linode上托管的ubuntu服务器上的mongod.conf中重新启动mongod并且状态看起来不错。

我在ufw上打开了mongodb端口

sudo ufw status 状态:有效

  

采取行动    - ------ ---- 22 / tcp ALLOW Anywhere 10000
  允许任何地方Nginx全满   允许任何地方3333
  允许任何地方27017
  允许任何地方22 / tcp(v6)
  允许任何地方(v6)10000(v6)
  允许任何地方(v6)Nginx Full(v6)
  允许任何地方(第6节)3333(第6条)
  允许任何地方(第6节)27017(第6条)
  允许任何地方(第6节)

从我的mac连接到它会抛出错误:

  

mongo mongodb:// admin:secret @ ubuntuipaddress / fielddb?authSource = admin   MongoDB shell版本v3.6.2连接到:   MongoDB的:// ubuntuipaddress / fielddb authSource =管理员   2018-04-08T13:47:32.212 W NETWORK [thread1]无法连接   ubuntuipaddress:27017,in(在轮询后检查socket的错误),   原因:连接被拒绝2018-04-08T13:47:32.214 E QUERY
  [thread1]错误:无法连接到服务器ubuntuipaddress:27017,   连接尝试失败:connect@src/mongo/shell/mongo.js:251:13   @(连接):1:6异常:连接失败

如何解决此问题?

3 个答案:

答案 0 :(得分:1)

禁用防火墙并尝试查看是否可以连接,如果可以的话,那就是你的fw规则。首先尝试一下,看看这是否有帮助。

答案 1 :(得分:0)

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

答案 2 :(得分:0)

为在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

你应该很好。