function(err) { if (err) { console.log(err.message);} // 该操作会关闭所有连接 });连接池的特点是惰性创建,即根据实际需求动态分配连接。例如,即使配置了5个连接,若实际使用量为2个,池中只会保持2个活跃连接。通过上述步骤,你已经了解了如何在Node.js应用中高效地与MySQL数据库交互。
Node.js 的 MySQL 连接池如何管理与释放连接?
Node.js通过其MySQL驱动程序内置了连接池功能,这对于管理和优化数据库连接非常有用。要创建一个包含5个连接的连接池,只需使用如下代码:
var pool = mysql.createPool({
connectionLimit: 5,
host: 'localhost',
user: 'root',
password: 'password',
database: 'todoapp'
});
当需要从池中获取连接时,通过调用pool.getConnection()方法实现,如:
pool.getConnection(function(err, connection) {
// 执行查询
// ...
// 查询完成后,释放连接以便其他人使用
connection.release();
});
如果需要关闭并从池中删除连接,使用connection.destroy()方法;若要结束并关闭所有连接,可以调用pool.end()方法:
pool.end(function(err) {
if (err) {
console.log(err.message);
} // 该操作会关闭所有连接
});
连接池的特点是惰性创建,即根据实际需求动态分配连接。例如,即使配置了5个连接,若实际使用量为2个,池中只会保持2个活跃连接。通过上述步骤,你已经了解了如何在Node.js应用中高效地与MySQL数据库交互。2024-06-01