开发者社区> 问答> 正文

node.js中mysql连接池的使用方法?

已解决

node.js中mysql连接池的使用方法?

展开
收起
zhanginzaghi 2017-11-13 09:48:57 4631 0
3 条回答
写回答
取消 提交回答
  • 金融IT技术人员
    采纳回答

    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  

    });

    2019-07-17 21:43:29
    赞同 2 展开评论 打赏
  • 可以使用 knex.js 不用自己操心连接池

    2019-07-17 21:43:29
    赞同 展开评论 打赏
  • 直接用 mysql 模块的 createPool 接口即可

    const pool  = mysql.createPool({
      connectionLimit : 10,
      host            : 'example.org',
      user            : 'bob',
      password        : 'secret',
      database        : 'my_db'
    });

    如果要连接多个从库的话,可以用 PoolCluster ,具体参见: https://github.com/mysqljs/mysql#poolcluster

    2019-07-17 21:43:29
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
探究 Node.js 的服务端之路 立即下载
个推微服务实践 基于OpenResty 和Node.js 立即下载
沪江基于Node.js大规模应用实践 立即下载

相关镜像