我有一个运行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是否响应我的请求?
答案 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的东西,或者在任何防火墙中允许它,您必须在服务器中允许它。