您的位置:MYSQL中文网 > nodejs mysql 连接池 Node.js 与 MySQL 连接池

nodejs mysql 连接池 Node.js 与 MySQL 连接池

2023-09-23 03:30 MySQL教程

nodejs mysql 连接池 Node.js 与 MySQL 连接池

nodejs mysql 连接池

Node.js MySQL 连接池是一种特殊的数据库连接,它可以让你在 Node.js 应用中使用 MySQL 数据库。它可以帮助你减少数据库连接的开销,并且可以节省大量的时间和精力。

MySQL 连接池是一种特定的数据库连接,它可以让你在 Node.js 应用中使用 MySQL 数据库。MySQL 连接池允许多个请求同时使用同一个数据库连接,而不必重新创建新的连接。这样可以减少服务器上的开销,并且可以节省大量的时间和精力。

const mysql = require('mysql'); 
const pool = mysql.createPool({ 
    host: 'localhost', 
    user: 'root', 
    password: 'password', 
    database: 'database' 
}); 

MySQL 连接池是通过 Node.js 的 mysql 模块来创建的,通常情况下,我们会首先引入 mysql 模块,然后使用 createPool() 方法来创建一个 MySQL 连接对象。createPool() 方法需要传入一些必要的参数(如 host、user、password 等)来初始化 MySQL 连接对象。

pool.getConnection(function(err, connection) { 

    // Use the connection 

    connection.query('SELECT * FROM table', function (error, results, fields) { 

        // And done with the connection. 

        connection.release();  

        // Handle error after the release.  

        if (error) throw error;  

        // Don't use the connection here, it has been returned to the pool.  

    });  
}); 

当我们需要执行 SQL 语句时,我们需要使用 getConnection() 方法来获取一个数据库连接对象。getConnection() 方法会在 MySQL 连

Node.js 与 MySQL 连接池

node.js模块的MySQL驱动程序为您提供了内置的连接池功能 假设您要创建一个具有5个连接的连接池:

var pool = mysql.createPool({
    connectionLimit: 5,
    host: "localhost",
    user: "root",
    password: "", 
    database: "todoapp"
});
Js

要从池中获取连接,可以使用getConnection()方法:

pool.getConnection(function(err, connection) {
  // execute query
  // ...
});
Js

要在完成连接后将其连接到池,可以调用connection.release()。 之后,连接将在池中可用,并可以由其他人再次使用。

pool.getConnection(function(err, connection) {
  // execute query
  // ...
  connection.release();
});
Js

要关闭连接并将其从池中删除,请使用connection.destroy()方法。 如果下次需要,将在池中创建一个新的连接。

请注意,连接池中所建立的连接是懒惰的。例如,如果您使用5个连接配置连接池,但是同时仅使用2个连接,则连接池仅创建2个连接。

要关闭池中的所有连接,请使用pool对象的end()方法,如下所示:

pool.end(function(err) {
  if (err) {
    return console.log(err.message);
  }
  // close all connections
});
SQL

在本教程中,您已经学会了如何从node.js应用程序连接到MySQL数据库。

阅读全文
以上是MYSQL中文网为你收集整理的nodejs mysql 连接池 Node.js 与 MySQL 连接池全部内容。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
相关文章
© 2024 MYSQL中文网 mysqlcn.com 版权所有 联系我们
桂ICP备12005667号-29 Powered by CMS