本地mongo客户端无法连接到本地mongod服务器

时间:2017-10-08 13:40:19

标签: mongodb

我在mongod 16.04虚拟服务器上运行ubuntu实例,侦听本地主机上的端口27017:

netstat -tulpn :

tcp        0      0      127.0.0.1:27017         0.0.0.0:*               LISTEN      11639/mongod    

但是本地mongo客户端脚本无法在端口27017上连接:

MongoDB shell version v3.4.9

connecting to: mongodb://127.0.0.1:27017

W NETWORK  [thread1] Failed to connect to 127.0.0.1:27017 after 5000ms milliseconds, giving up.
E QUERY    [thread1] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed :
connect@src/mongo/shell/mongo.js:237:13
@(connect):1:6
exception: connect failed

一切都是本地的,所以AFAIK所有端口都打开了。

服务器日志只是说:

  

I NETWORK [thread1]等待端口27017上的连接

什么可以解释连接失败?

2 个答案:

答案 0 :(得分:2)

在我看来,在使用mongo cli之前,你应该开始使用mongod。

$ sudo mongod

$ sudo service mongod restart

并检查mongod服务的状态

$ sudo service mongod status

然后使用mongo shell

$ mongo

答案 1 :(得分:0)

这是一个网络绑定问题。尝试连接到mongodb://localhost:27017
另外,尝试在bind_ip启动中注释掉mongod参数,例如

# bind_ip = 127.0.0.1                                                            

mongo CLI是否连接?如果是这样,请仔细检查正确传递客户端脚本调用参数。

为了确保mongod正在运行,请尝试此操作:

$ curl 'http://localhost:27017'
It looks like you are trying to access MongoDB over HTTP on the native driver port.
相关问题