Node.js无法连接到MongoDB

时间:2012-08-09 10:11:21

标签: node.js mongodb

我是Node.js和MongoDB的新手。我正在按照本指南:http://howtonode.org/express-mongodb创建一个包含Node.js和MongoDB的简单博客。

当节点尝试连接到MongoDB时,它失败了,我不知道为什么。

在我的app.js文件中,我有:

var articleProvider = new ArticleProvider('127.0.0.1', 27107);

在我的articleprovider-mongodb.js文件中我有

var Db = require('mongodb').Db;
var Connection = require('mongodb').Connection;
var Server = require('mongodb').Server;
var BSON = require('mongodb').BSON;
var ObjectID = require('mongodb').ObjectID;

ArticleProvider = function(host, port) {
  this.db = new Db('node-mongo-blog', new Server(host, port, {auto_reconnect: true}, {}));
  this.db.open(function(err){
    if(err) {
      console.log(err);
    }
  });
};

在我的终端,我得到:

8月9日10:48:19 - [nodemon]开始node app.js [错误:无法连接到[127.0.0.1:27107]]

我正在运行node.js v0.8.6和mongodb v2.0.6

我在这些文件中有其他代码,但从我看到它不应该影响数据库连接。

1 个答案:

答案 0 :(得分:2)

当mongod进程正在运行或你正在连接到错误的主机/ ip时,会发生这种情况。

您是否在本地主机上运行它?如果可以,您可以从mongo shell访问它?

尝试使用node,express和mongodb nodejs驱动程序的最低版本的应用程序进行测试。

我用这些文件测试了它:

除了最后两行app.js之外,它运行良好,因为 express 3.x而不是示例中使用的2.x.

var server = app.listen(3000);
console.log("Express server listening on port %d in %s mode", server.address().port, app.settings.env);