我在 CentOS 7.2 VPS上安装了 MongoDB ,并尝试通过客户端的Robomongo访问数据库。但是,当我尝试从 27017 端口连接服务器时,我得到" 网络无法访问"错误。
我在服务器上启用了 firewalld ,并为 27017 端口添加了例外。
firewall-cmd --list-all
结果:
在我永久添加了异常并通过--reload重新加载firewalld之后,我得到了这个结果。
当我使用以下方式查询端口时:
firewall-cmd --query-port=27017/tcp
我得到了一个" 是"来自系统。但是当我尝试通过Robomongo连接或通过像http://ping.eu/port-chk/这样的端口检查服务查询端口时,我得到了否定的结果。
你对我的案子有什么建议吗?
谢谢。
答案 0 :(得分:3)
我有同样的问题,但在Centos 7 Vm中运行mongod。
首先,我必须使用firewall-cmd打开mongodb端口:
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
sudo firewall-cmd --reload
然后我不得不更改/etc/mongodb.conf中的网络配置条目 另见:https://docs.mongodb.com/manual/reference/configuration-options/#net-options
我删除了bindIp:Entry并添加了bindIpAll:true
net:
port: 27017
bindIpAll: true
使用bindIp:根据您需要输入的文档:
mongos和mongod应监听客户端连接的IP地址和/或完整的Unix域套接字路径。您可以将mongos和mongod附加到任何界面。要绑定到多个地址,请输入逗号分隔值列表
默认为:
net:
port: 27017
bindIp: 127.0.0.1
这意味着mongodb只侦听localhost
答案 1 :(得分:1)