gpt4 book ai didi

mysql - 使用 node.js/mysql connectionPool 时中止连接

转载 作者:行者123 更新时间:2023-11-29 00:13:16 27 4
gpt4 key购买 nike

var mysql      = require('mysql');
var mysqlPool = mysql.createPool({
host : 'localhost',
user : 'nodejs',
password: '',
database: 'nodejs'
});


// somewhere inside a method:
mysqlPool.getConnection(function(err, connection) {
// do some queries

connection.release();
});

我在输出中没有看到任何警告,但在 MySQL 服务器上,我看到自从使用此 node.js 代码测试以来中止连接

当我停止 node.js 应用程序时是否必须关闭连接池?

如果是,怎么办?

最佳答案

如果您使用 Ctrl+C 命令关闭您的 node.js 应用程序,您可以关闭 SIGINT 上的连接池。事件:

process.on('SIGINT', function() {
mysqlPool.end(function (err) {
/* Since you're overriding the default behavior of SIGINT,
you have to force your app to exit. You can pass it as
a callback to the end() function. */
process.exit(0);
});
});

但是您也可以配置您的 MySQL 服务器以关闭空闲连接,设置服务器变量 wait_timeout和/或 interactive_timeout .

由您决定什么最适合您的需求。

关于mysql - 使用 node.js/mysql connectionPool 时中止连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23912255/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com