1. 程式人生 > >node.js中mysql連接池的使用

node.js中mysql連接池的使用

lease package lba ref table mysql mod select something

https://cnodejs.org/topic/58378543bde2b59e06141f5a

起初的做法是創建一個連接然後使用,後來發現一段時間後會出現卡死不響應的情況,只有重啟nodejs服務,搜索一番後想到了用連接池,經測試,不再出現卡死不響應情況。

參考鏈接: https://www.npmjs.com/package/mysql http://blog.csdn.net/lovingshu/article/details/41721233

Node.js mysql連接池模塊

1,安裝node的mysql模塊 npm -install -g node-mysql
2,建立一個類庫,就叫mysql_pool.js吧,然後內容如下:

var mysql=require("mysql");  
var pool = mysql.createPool({  
    host: ‘localhost‘,  
    user: ‘user‘,  
    password: ‘password‘,  
    database: ‘database‘,  
    port: port  
});  
  
var query=function(sql,options,callback){  
    pool.getConnection(function(err,conn){  
        if(err){  
            callback(err,null,null);  
        }else{  
            conn.query(sql,options,function(err,results,fields){  
                //釋放連接  
                conn.release();  
                //事件驅動回調  
                callback(err,results,fields);  
            });  
        }  
    });  
};  
  
module.exports=query;

3,在js類使用如下

var query=require("./lib/mysql_pool");  
  
query("select * from table where id=?", [1], function(err,results,fields){  
    //do something  
});

node.js中mysql連接池的使用