一尘不染

与MongoDB errno 111的连接被拒绝

linux

我有一台运行Ubuntu 12.04 LTS和MongoDB实例(服务正在运行并且可以在本地连接)的Linode服务器,我无法从外部来源连接到该服务器。

我已经将这两个规则添加到我的IP表中,其中是我要连接FROM的服务器(如本MongoDB参考中所述):

iptables -A INPUT -s < ip-address > -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -d < ip-address > -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT

而且我在IP表中看到了一条规则,该规则允许27017与之间的连接,但是当我尝试使用以下命令从连接到我的mongo数据库时:

mongo databasedomain/databasename -u username -p password

我收到此错误:

`2014-07-22T23:54:03.093+0000 warning: Failed to connect to
databaseserverip:27017, reason: errno:111 Connection refused
2014-07-22T23:54:03.094+0000 Error: couldn’t connect to server < ip address

:27017 (databaseserverip), connection attempt failed at
src/mongo/shell/mongo.js:148 exception: connect failed`

任何帮助都非常感谢!!!!谢谢!!!


阅读 316

收藏
2020-06-02

共1个答案

一尘不染

感谢大家的帮助!

原来这是一个iptable冲突。有两个规则列出了打开的端口(导致端口关闭)。

但是,aka的另一条评论和manu2013的另一条评论是我遇到的问题,即使不是因为冲突。

所以!始终记住要编辑/etc/mongod.conf文件并进行设置bind_ip = 0.0.0.0,以便与外部建立连接。

另外,请确保您的iptable中没有针对mongo想要的端口的冲突规则(请参阅mongodb网站上的链接以正确设置iptables)。

2020-06-02