mysql - mysql nodejs连接太多
问题描述
我有一个 API 服务器,它对 mysql 数据库运行不同的 API 调用:这是完全处理连接和查询的文件:
const mysql = require('mysql')
const pool = mysql.createPool({
host: sqlhost,
port: sqlport,
user: sqluser,
password: sqlpsw,
database: sqldb,
charset: 'utf8mb4',
connectionLimit: 10
})
module.exports = {
get: function (sqlQuery, type) {
return new Promise((resolve, reject) => {
pool.getConnection((err, connection) => {
if (err) reject(new Error(505))
else {
connection.query(sqlQuery, function (err, results) {
connection.release()
if (err !== null) reject(new Error(503))
else resolve(results)
})
}
})
})
}
}
一段时间后,我得到了Error: ER_CON_COUNT_ERROR: Too many connections
. 我知道我可能使用了 pool.query 而不是流 pool.getConnection --> connection.query --> connection.release 但结果(我猜)是一样的。
我不知道是什么导致了“连接泄漏”。任何想法?谢谢
解决方案
推荐阅读
- java - 如何使用 Android UsageStatsManager 获取当前运行的应用程序名称?
- pdf - 如何从边缘删除 pdf-toolbar
- node.js - Node js Express 刷新后返回错误 404
- javascript - 使用 setState 将空数组设置为对象属性时出错(反应 Hooks)
- javascript - 带有HTML的TS文件中的JS函数问题
- c# - 通过 Net Framework 4.7.2 公开 Web 服务
- arrays - 如何在 postgresql 中的 JSON 中提取数组值?
- python - Django DRF 路由不是有效的正则表达式
- dynamics-business-central - 拖放控件加载项在 Dynamics 365 BC 上不起作用
- sql - 聚合的联接或分组 - SQL