小编Ric*_*ard的帖子

Node-MySQL 上的连接过多

Too many connections当 INSERT IGNORE INTO 循环中有很多项目时,我会收到错误消息。

function insertCases(cases) {
    for(var i in cases) {
        var thequery = 'INSERT IGNORE INTO `cases` SET keysused='+cases.keysused+' 
        pool.query(thequery, function(ee, rr) {
            if(ee) {
                logger.info(ee);
                throw ee;
            }
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

当现在有 100 多个案例时,INSERT IGNORE INTO 比我获得太多连接的次数要多 100 次。我不知道它到底崩溃了多少,但有 100 次它就可以工作了。

我读到的是,该查询运行查询并在完成后关闭连接,所以我读到,我不需要在之后关闭它。

如果我运行 100,等待很短的时间并再次运行 100,依此类推,则不会出现连接过多的错误。

只有当一次运行这么多时间时。

这是我的数据库设置

var db_config = {
    connectionLimit : 5000,
    host: 'localhost',
    user: 'userexample',
    password: '*******',
    database: 'example.com'
};
Run Code Online (Sandbox Code Playgroud)

这就是 createPool 的功能。

function database_connection() {
pool = mysql.createPool(db_config);
pool.getConnection(function(err, …
Run Code Online (Sandbox Code Playgroud)

mysql connection-pooling node-mysql

9
推荐指数
1
解决办法
6816
查看次数

标签 统计

connection-pooling ×1

mysql ×1

node-mysql ×1