池连接上的nodejs mysql错误:连接丢失:服务器关闭了连接

时间:2021-03-28 23:49:44

标签: mysql node.js

我的问题与 this post 类似,但该解决方案对我不起作用,可能是因为我使用了不同类型的 mysql 连接(池)。这是我的代码:

    let config= {
        host: '***',
        user: 'admin',
        password: '***',
        port: '3306',
        database: '***',
        multipleStatements: true
    };

const con = mysql.createPool(config);
select();
function select(){
    return new Promise((resolve, reject) => {
        con.getConnection(function (err, connection) {
            if (err) throw err;
            else
                console.log("Connected!");
            let sql = "SELECT * FROM bidPrice WHERE idExchangePlatform = 2;";
            connection.query(sql, function (err, results, fields) {
                connection.release();
                connection.destroy();
                if (err) throw err;
                console.log(results)
                resolve(results);
            });

        });
    });
}

我还要提一下,我使用以下命令运行此功能

node --max-old-space-size=31744 index.js # 增加到 31 GB

这是因为我正在处理来自数据库查询的数百万条记录如果我使用常规节点命令运行它,我会得到 Javascript heap out of memory

当我尝试将我之前提到的解决方案集成到我的代码中时,我只是在一段时间后得到一个“终止”日志,然后进程停止,我应该在使用 mysql.pool 时以不同的方式处理服务器断开连接吗?

enter image description here

0 个答案:

没有答案