MySQL Pool

创建连接池
function SqlPool() {
    this.flag = true;//是否连接过
    this.pool = mysql.createPool({
        host : 'localhost',
        user : 'root',
        password : password,
        database : 'mydb',
        port : '3306',
    });

    this.getPool = function () {
        if(this.flag) {
            // 监听connection事件
            this.pool.on('connection', function (connection) {
                connection.query('set session auto_increment_increment=1');
                this.flag = false;
            });
        }
        return this.pool;
    };
}
View Code
使用
var SqlPool = require('./mysql');
var Pool = new SqlPool();
var pool = Pool.getPool();

pool.getConnection(function (err, conn) {
    if(err) {
        console.log(err);
        return ;
    }
    conn.query('select * from user',function (err, rs) {
        if(err) {
            console.log(err);
            return ;
        }
        for(var i = 0; i < rs.length; i++) {
            console.log('id : ' + rs[i].id);
            console.log('name : ' + rs[i].name);
            console.log('pwd : ' + rs[i].pwd);
        }
        conn.release();
    }); 
});    
        
View Code
关闭
pool.releaseConnection(conn);
View Code

转载于:https://www.cnblogs.com/tujw/p/10434387.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,你的问题是关于 Sequelize 和 MySQL 连接池的使用。Sequelize 是一种基于 Node.js 的 ORM 框架,它可以帮助我们在 Node.js 应用程序中更方便地操作 MySQL 数据库。而 MySQL 连接池则是一种用于管理 MySQL 数据库连接的技术,它可以有效地提高应用程序的性能和可扩展性。 在使用 Sequelize 连接 MySQL 数据库时,我们可以通过以下代码创建一个连接池: ```javascript const { Sequelize } = require('sequelize'); const sequelize = new Sequelize({ dialect: 'mysql', host: 'localhost', username: 'root', password: 'password', database: 'database', pool: { max: 10, min: 0, acquire: 30000, idle: 10000 } }); ``` 上述代码中,我们通过 `pool` 选项配置了连接池的一些参数,包括最大连接数、最小连接数、连接超时时间等。这些参数可以根据应用程序的实际需求进行调整。 在应用程序中使用 Sequelize 进行数据库操作时,我们可以通过以下代码获取一个数据库连接: ```javascript const sequelize = require('./sequelize'); // 引入 sequelize const connection = await sequelize.getConnection(); // 获取连接 ``` 上述代码中,`getConnection` 方法会从连接池中获取一个可用的连接,如果连接池中没有可用的连接,则会阻塞等待,直到有可用的连接为止。 使用完数据库连接后,我们需要手动将连接释放回连接池,以便其他请求可以继续使用它: ```javascript await connection.release(); // 释放连接 ``` 这样,我们就可以通过 Sequelize 和 MySQL 连接池来更方便地进行数据库操作了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值