Can';无法从本地计算机连接mongoDB数据库

Can';无法从本地计算机连接mongoDB数据库,mongodb,Mongodb,更新: 我刚刚开始处理一个新的VPS,我正在尝试从localhost(使用robomongo)连接其端口27017(mongodb数据库) 它在我的本地主机和另一台远程服务器上工作,但我无法在这个VPS上连接mongodb,是什么导致了这个问题? 我是这样开始的: mongod --setParameter enableLocalhostAuthBypass=0 --config /etc/mongodb.conf --fork 在/etc/mongodb.conf文件中未注释auth=tru

更新:

我刚刚开始处理一个新的VPS,我正在尝试从localhost(使用robomongo)连接其端口27017(mongodb数据库)

它在我的本地主机和另一台远程服务器上工作,但我无法在这个VPS上连接mongodb,是什么导致了这个问题? 我是这样开始的:

mongod --setParameter enableLocalhostAuthBypass=0 --config /etc/mongodb.conf --fork
在/etc/mongodb.conf文件中未注释
auth=true
(但问题似乎不是我无法进行身份验证,而是mongodb根本没有响应)。 当我通过SSH连接启动
mongo admin-u root-p root时,它工作得很好(我可以连接我的数据库),我可以看到mongodb在端口27017上监听良好

但是,当我尝试从本地计算机访问它时,它无法建立连接,如果我尝试将其与浏览器连接,我应该会收到一条mongodb错误消息:
您尝试在本机驱动程序端口上访问mongodb。对于http诊断访问,将1000添加到端口号
,但我没有,我只有一个带有Chrome的故障页面(端口28017也没有响应)


如何解决这个问题?我的VPS是全新的,我可能需要安装更多的软件包,但我真的不知道这需要什么,它看起来也像是防火墙问题,在请求到达之前阻止mongodb和响应,我刚刚安装了apache2和nginx,它们没有运行,所以我真的看不到…

好的,我发现了问题

/etc/mongod.conf
文件中有一行
bind_ip 127.0.0.1
。 它只向mongodb提供对指定IP地址的访问

您应该创建一个IP阵列,并将配置文件编辑为:

bind_ip [127.0.0.1, x.x.x.x, ...]

其中
x.x.x.x
是您的IP。

我用文件(/etc/mongod.conf)解决了这个问题 评论如下:


#bindIp:127.0.0.1#只听本地接口,评论所有接口。

nginx在端口27017上应该如何回答?您是否将其配置为侦听该端口?它与DNS无关。是的,我意识到这可能与DNS无关,但我不知道在哪里查找…只需指出关于此答案的一些重要信息:注释
bind\u ip
配置将允许任何人尝试对您的数据库进行身份验证。如果您这样做,请小心使用密码保护它(Mongo默认情况下没有密码)。
它只提供对mongodb指定IP地址的访问。
谢谢您的提示。在mongoDB URI连接字符串和与mongod连接的应用程序中,从localhost更改为127.0.0.1