如何使用node.js和mongoDB

How to work with node.js and mongoDB

我读过:

  • 如何在Node.js Web应用程序中管理MongoDB连接?
  • http://mongodb.github.io/node-mongodb-native/driver-articles/mongoclient.html
  • 如何在EC2环境中使用node-mongodb-native在Node.js服务器上设置MongoDB?

我真的很困惑。我应该如何使用node.js中的mongoDB?我是菜鸟,我的问题可能看起来很愚蠢。

1
2
3
4
5
var db = new db.MongoClient(new db.Server('localhost', 27017));
    db.open(function(err, dataBase) {
       //all code here?
       dataBase.close();
    });

或者每次当我需要数据库中的东西时,我都需要打电话:

1
2
3
4
MongoClient.connect("mongodb://localhost:27017/myDB", function(err, dataBase) {
    //all code here
    dataBase.close();
});

打开和连接之间有什么区别?我读了打开的手册:初始化和第二次连接。但是那到底是什么意思呢?我以为两者都做相同的事情,但是换句话说,那么我什么时候应该改用另一个?

我也想问mongoClient需要4个套接字是正常的吗?我同时运行两个myWEbServer,如下图:
http://i43.tinypic.com/29mlr14.png

编辑:
我想提一下,这不是问题(相当怀疑:D),我的服务器运行良好。我问是因为我想知道我是否正确使用了mongoDB驱动程序。
现在/实际上,我使用第一个选项,在开始时初始化mongo dirver,并在内部装入所有代码。


我建议您尝试他们提供的MongoDB教程。我当时在同一条船上,但这很好地将它分解了。另外,在github上有这篇文章解释了数据库连接的基础。

简而言之,看来您做得对。

1
2
3
4
5
6
7
8
9
MongoClient.connect("mongodb://localhost:27017/myDB", function(err, dataBase) {
    //all code here
    var collection = dataBase.collection('users');
    var document1 = {'name':'John Doe'};
    collection.insert(document1, {w:1}, function(err,result){
        console.log(err);
    });
    dataBase.close();
});


我有同样的问题。我从mongo文档中找不到任何正确的答案。
所有文档都说是希望使用新的数据库连接,然后使用open(而不是使用connect())
http://docs.mongodb.org/manual/reference/method/connect/


您仍然可以注册免费课程M101JS:MongoDB专家提供的面向Node.js开发人员的MongoDB。

这里是简短说明:

This course will go over basic installation, JSON, schema design,
querying, insertion of data, indexing and working with language
drivers. In the course, you will build a blogging platform, backed by
MongoDB. Our code examples will be in Node.js.