繁体   English   中英

连接到远程 mongo 服务器

[英]Connecting to remote mongo server

我在连接到远程服务器上运行的 mongodb 实例时遇到问题。 假设我有一个服务器A (123.45.67:27017),它在端口 27017 上运行一个 mongo db。然后当我尝试通过键入以下内容从我自己的机器B连接时:

B$: mongo A:27017

我会得到一个错误

Failed to connect to A:27017, in(checking socket for error after poll), reason: Connection refused

我为故障排除做了什么:

  1. 确保端口 27017 在服务器 A 上打开。使用 nc -l 27017 进行测试并且它可以工作 - 我可以输入到 B。
  2. 通过使用ssh隧道将27017端口绑定到localhost成功连接到数据库: ssh -f -L 27017:localhost:27017 myUserName@A sleep 10; mongo localhost:27017 ssh -f -L 27017:localhost:27017 myUserName@A sleep 10; mongo localhost:27017

简而言之,数据库运行,端口打开,我可以在绑定到本地端口时使用数据库。 任何人都可以帮忙吗?

除了本地主机之外,您的服务器可能没有在侦听。

mongod.conf (可能是/etc/mongod.conf

# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0  # listen on all interfaces

然后重启mongod服务。

您需要授权与 mongo 的远程连接。 默认情况下,您只能从同一 IP(本地主机)访问

如果我没记错的话,您应该查看 conf 文件sudo vim /etc/mongod.conf并寻找一行 call security 应该取消注释并启用值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM