如何使用mongo / mongoose连接到远程数据库

时间:2015-11-09 16:59:53

标签: node.js mongodb express

我在IP ex中有一个节点js app:111.111.111.23:3000我想从我的本地express / node app脚本连接到我的远程mongodb数据库。数据库正在上面提到的IP中运行但由于某种原因,我所能做的就是连接到我的本地mongodb数据库。

if (app.get('env') === 'development') {
    app.use(function (err, req, res, next) {
        res.status(err.status || 500);
        res.render('error', {
            message: err.message,
            error: err
        });
    });

    mongoose.connect('mongodb:111.111.111.23:27017/test');
}

上面的代码在我的app.js中并且它可以正常工作,但我想要做的就是这样。

cm.<any_cmap>(np.linspace(0,1,number_of_lines))

我尝试使用和不使用端口添加ip,但它失败了。

我的问题是如何从本地计算机连接到远程数据库?

这种情况有帮助。远程服务器正在运行ubuntu服务器14.04,我使用本指南安装了mongodb:https://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/

我收到以下错误:

错误:连接ECONNREFUSED 111.111.111.23:27017

2 个答案:

答案 0 :(得分:6)

猫鼬连接格式为:

mongoose.connect('mongodb://host:port/database');

如果您没有用户名和密码,请执行:

$ mongo 111.111.111.23:27017

来源:http://mongoosejs.com/docs/connections.html

您也可以尝试使用mongo客户端进行连接,看看它是否有效..

$ sudo service mongod start

此外,但不太可能,请确保您的mongod服务已启动。

$ iptables -A INPUT -p tcp --dport 27017 -j ACCEPT

Finnaly,确保您的防火墙已关闭或使用以下命令打开端口:

removeFromSuperview()

答案 1 :(得分:0)

这是我的代码,但仍然有错误: 的错误

E:\nodeJs>node mongoDBApi.js

E:\nodeJs\node_modules\mongodb\lib\mongo_client.js:792
          throw err;
          ^
[object Object]

<强>码

var MongoClient = require('mongodb').MongoClient;
var url = 'mongodb://xxxx:xxxx@192.168.11.14:22/';


MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  var dbo = db.db("cdb");
  dbo.collection("ccollection").findOne({}, function(err, result) {
    if (err) throw err;
    console.info(result.name);
    db.close();
  });
});