Nodejs使用连接池连接数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nodejs使用连接池连接数据库相关的知识,希望对你有一定的参考价值。

  1. 创建OptPool.js

var mysql = require(‘mysql‘);


function OptPool(){

this.flag = true;

this.pool = mysql.createPool({

host:‘localhost‘,

user:‘root‘,

password:‘‘,

database:‘mtc‘,

port:‘3306‘

});


this.getPool = function(){

if (this.flag) {

this.pool.on(‘connection‘,function(connection){

connection.query(‘SET SESSION auto_increment_increment=1‘);

this.flag = false;

});

}

return this.pool;

}

}


module.exports = OptPool;

  1. 创建mysqlPool.js

var OptPool = require(‘./models/OptPool‘);

var optPool = new OptPool();

var pool = optPool.getPool();


pool.getConnection(function(err,conn){

//删除

var deleteSql = "DELETE FROM mtc_users WHERE user_id = ? ";

var deleteParams = [‘3‘];

conn.query(deleteSql,deleteParams,function(err,rs){

if (err) {

console.log(err);

return;

}

console.log(‘delete success‘);

conn.release();

})


// //修改

// var updateSql = "UPDATE mtc_users SET user_pass = ? WHERE user_id = ? ";

// var updateParams = [‘7891012‘,‘3‘];

// conn.query(updateSql,updateParams,function(err,rs){

// if (err) {

// console.log(err);

// return;

// }

// console.log(‘update success‘);

// conn.release();

// })


// //查询

// var selectSql = "SELECT * FROM mtc_users";

// var selectParams = [];

// conn.query(selectSql,selectParams,function(err,rs){

// if (err) {

// console.log(err);

// return;

// }

// for(var i = 0;i<rs.length;i++){

// console.log(rs[i].user_name);

// }

// conn.release();

// })

// //插入

// var insertSql = "INSERT INTO mtc_users(user_name,user_pass,create_time) VALUES(?,?,?) ";

// var insertParams = [‘zhaoyun‘,‘zhao123‘,‘123‘];

// conn.query(insertSql,insertParams,function(err,rs){

// if (err) {

// console.log(err);

// return;

// }

// console.log(‘insert success‘);

// conn.release();

// })

});

本文出自 “素颜” 博客,请务必保留此出处http://suyanzhu.blog.51cto.com/8050189/1891744

以上是关于Nodejs使用连接池连接数据库的主要内容,如果未能解决你的问题,请参考以下文章

在 mongodb-native NodeJS 中为每个子进程使用集群的单个连接池与多个连接池

生产级Nodejs开发实践-使用连接池

NodeJS,mysql2/promise,连接池执行,将数据复制到另一个数据库

nodejs从0到1(mysql)

Node.js如何使用MySQL的连接池实例

nodejs mysql 创建连接池