首页 > 代码库 > node.js中mysql连接池的使用

node.js中mysql连接池的使用

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连接池的使用