nodeJS連接MongoDB的方法


分別使用Client對象和字符串連接

 

使用Client對象:

即使用MongoDB的MongoClient類

該對象接受兩個參數:MongoClient(Server,options)

其中Server對象定義了MongoDB驅動程序應該怎樣連接到服務器,包含諸如所使用的主機、端口、池的大小,

options : 數據庫連接選項

 

以下實例:

 1 var MongoClient=require('mongodb').MongoClient,  
 2     Server=require('mongodb').Server;
 3 var client=new MongoClient(new Server('localhost',28008,{
 4                             socketOptions:{connectTimeoutMS:500},
 5                             poolSize:5,
 6                             auto_reconnect:true
 7                         },{
 8                             numberOfRetries:3,
 9                             retryMiliSeconds:500
10                         }));
11 
12 client.open(function(err,client){
13     if (err) {
14         console.log('Connection Failed');
15     }else{
16         var db=client.db("testDB");
17         if (db) {
18             console.log('conncetion success by Object of Client');
19             client.close();
20             console.log("db has closed");
21         }
22     }
23 });

 

使用字符串方法:

通過使用MongoClient類的connect()方法

使用語法:

MongoClient.connect(connString,options,callback)

connString語法如下:

mongodb://username:password@host:port/datebase?options

options : 數據庫連接選項

 

以下是實例:

var MongoClient=require('mongodb').MongoClient,
    Server=require('mongodb').Server;

MongoClient.connect("mongodb://localhost:28008/foobar",{
    db:{w:1,native_parser:false},
    server:{
        poolSize:5,
        socketOptions:{connectTimeoutMS:500},
        auto_reconnect:true
    },
    replSet:{},
    mongos:{}
    },function(err,db){
        if (err) {
            console.log("connect failed");
        }else{
            console.log("conenct success by string of mongodb");
            db.logout(function(err,result){
                if (!err) {
                    console.log('logged out success');
                }
                db.close();
                console.log('connect close');
            })
        }
    });

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM