mysql查询出错时释放连接的任何方法

mysql查询出错时释放连接的任何方法,mysql,node.js,Mysql,Node.js,这是获取回调的简单测试代码。我只想问一下,在出现错误的情况下,如何释放连接,因为代码会转到catch块 这是我的密码: const express = require('express'); const mysql = require('mysql2'); const app = express(); const pool = mysql.createPool({ host: 'localhost', user: 'root', database: 'mydb', connec

这是获取回调的简单测试代码。我只想问一下,在出现错误的情况下,如何释放连接,因为代码会转到catch块

这是我的密码:

const express = require('express');
const mysql = require('mysql2');

const app = express();
const pool = mysql.createPool({
  host: 'localhost',
  user: 'root',
  database: 'mydb',
  connectionLimit: 10 
}).promise();

pool.getConnection()
  .then(() => console.log('DB connected'))
  .catch((err) => console.log(err));

app.get('/api/v1', async (req, res) => {
  try {
    const connection = await pool.getConnection();
    const [rows, fields] = await connection.query('SELECT * FROM users WHERE is_active = ?', 'Y');
    connection.release();

    res.status(200).json({
      message: 'success',
      data: rows
    });
  } catch(error) {
    res.status(404).json({
      message: 'error',
      error: error
    });
  }
});

app.listen(3000, console.log('Listening to 3000'));

connection.close()在catch块中不起作用吗?不起作用。仅当put
const connection=wait pool.getConnection()时起作用在try块之外