无法连接Robo 3T到远程MongoDB服务器

6
我正在使用Mongo DB Version 3.4.6在我的Windows 7笔记本上。 我使用Robo 3T版本1.1.1连接MongoDB。我试图使用Robo 3T连接到远程Mongo服务器。

我已经编辑了mongo.conf文件中的bind_Ip选项,以包括远程服务器的IP地址。

这是我收到的错误消息:

无法连接到没有机会加载数据库列表。

当我点击出错详细信息时,它显示:无法连接到MongoDB,错误消息为:网络不可达。

我正在通过默认端口27017连接,当我尝试将Robo 3T连接到自己笔记本电脑上的MongoDB时,它可以正常工作。

我已附上我收到的错误消息。

enter image description here

请帮助我解决这个问题。


1
远程服务器在哪里?各种服务器基础设施提供商通常不会默认“公开服务”地址,即使您对服务器拥有公开可访问的IP地址,通常仍需要进行一些防火墙管理以允许端口访问。通常情况下,公开暴露您的MongoDB并不明智,如果确实这样做了,那么您应该至少将默认端口更改为不同和随机的端口,以防止黑客攻击尝试。您的提供商应该有更多信息。 - Neil Lunn
请注意,这确实涉及到编程或相关工具问题的“离题”范围。除非这非常具体地涉及“设置工具”,否则它确实是离题的,因为唯一剩下的要谈论的就是服务器和网络配置。如果您拥有AWS实例,则很可能需要使用“ssh隧道”访问私有IP。其余部分在提供者自己的帮助文章中免费提供,或者可以成为serverfault.com上的网络问题。 - Neil Lunn
远程服务器和我的计算机在同一网络上运行。MongoDB没有设置授权。防火墙不会阻止我在本地系统上使用Robo 3T访问端口27017,因此我认为它可能也不会阻止远程服务器的访问。 - AbhinayaAK
6个回答

2
我知道有点晚了,但我之前也遇到了同样的问题。在尝试了很多方法后,我通过从“管理连接”窗口中删除连接来解决了它。

enter image description here

然后再创建一次,我知道听起来很笨,但这是唯一对我有用的方法。

这对我实际起作用了,所以+1。我确定我之前有相同的值;我怀疑Robo3T连接对话框有点小问题。这是在Ubuntu上。 - Rich Smith
如果您编辑了设置,最好删除并重新创建,因为编辑后的设置似乎无法持久化。 - toing_toing

1

我曾经遇到过同样的问题,只需要将bindIp更改为0.0.0.0并重新启动服务器即可。


0

进入MongoDB的bin文件夹并运行mongod命令:- C:\Program Files\MongoDB\Server\4.2\bin,然后在此位置打开命令提示符并运行mongod命令,然后尝试使用Robo 3T连接。这对我有效。

还要在C盘内创建data文件夹,然后在data文件夹内创建一个名为db的文件夹。就这样。


0

我在 Mac 上遇到了类似的问题,无法找到 mongodb.conf 来将 bindIp 从 127.0.0.1 设置为 0.0.0.0。 我仅安装了 Robo 3T 并使用它。 解决方法:

     brew install mongo
     brew tap mongodb/brew
     brew install mongodb-community
     vi /usr/local/etc/mongod.conf

编辑此文件中的bindIP...默认情况下,它位于/usr/local/etc/mongod.conf

     sudo mongod restart
     brew services start mongodb-community

现在在 Robo 3T 中检查是否启用了任何 TLS 安全设置。如果是,请禁用它们,然后尝试连接。:)


0
对于在Ubuntu上连接时遇到问题的人,这里有一个提示:我转到TLS选项卡,然后选择了Self-signed-certificate身份验证方法。 还要确保您已正确填写身份验证选项卡中的字段。在此选项卡中,我选择了身份验证机制SCRAM-SHA-1,效果非常好。

-1

编辑mongo.conf文件并注释掉以下行:bindIp: 127.0.0.1


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接