将MongoDB设置为可从远程应用程序

时间:2015-06-09 06:18:43

标签: node.js mongodb ubuntu mongoose

我有一个运行MongoDB的Web服务器。它将保存一些数据,我需要在另一台计算机上安装第二个应用程序才能查询。使用MongoDB的服务器是Ubuntu,它将使用Meteor(目前我只做一些测试,所以我只安装了MongoDB),另一个应用程序是带有MongooseJS的NodeJS脚本。

如何设置MongoDB实例可以从远程应用程序访问?

我实际上发现很难理解并在网上查找信息。我试过了

var connection = GLOBAL.database.host;
mongodb.connect('mongodb://'+GLOBAL.database.host);

但它引发了错误Failed to connect to.... :27017

主机是我在Koding上设置的虚拟机,用于运行这些测试。我怎样才能确保Mongo可以访问?如何ping它以查看mongo是否响应我的请求?

1 个答案:

答案 0 :(得分:2)

默认情况下,MongoDB仅限于允许来自127.0.0.1的连接。

mongo的配置文件放在/etc/mongod.conf中。在该文件中,您可以找到以下两行:

# Listen to local interface only. Comment out to listen on all interfaces.
bind_ip = 127.0.0.1

按照说明继续评论bind_ip行(使用#符号)。重启MongoDB并重试。

确保您可以将服务器连接到端口27017(MongoDB使用的端口)。如果您有类似iptables的东西,或者在任何防火墙中允许它,您必须在服务器中允许它。