Node.js如何连接MySQL:从环境配置到实战操作

Node.js连接MySQL的核心方法是使用mysql2或mysql第三方库,通过创建连接池或单个连接对象实现数据库操作,以下将详细说明环境配置、连接步骤及代码示例,帮助开发者快速掌握这一关键技能。

node如何连接mysql,Node.js高效连接MySQL数据库

确保已安装Node.js和MySQL环境,在项目目录中,通过npm安装mysql2库(推荐使用mysql2,因其性能更优且支持Promise):

npm install mysql2

在Node.js文件中引入mysql2并配置连接信息。重点在于正确设置主机、端口、用户名、密码和数据库名,示例代码如下:

const mysql = require('mysql2');
// 创建连接配置
const connection = mysql.createConnection({
  host: 'localhost',     // 数据库主机地址
  port: 3306,            // MySQL默认端口
  user: 'root',          // 数据库用户名
  password: 'your_password', // 数据库密码
  database: 'test_db'    // 目标数据库名称
});
// 建立连接
connection.connect((err) => {
  if (err) {
    console.error('连接失败:', err.stack);
    return;
  }
  console.log('成功连接到MySQL数据库,连接ID:', connection.threadId);
});
// 执行查询示例
connection.query('SELECT * FROM users', (err, results) => {
  if (err) throw err;
  console.log('查询结果:', results);
});
// 关闭连接(重要!避免资源泄漏)
connection.end();

对于生产环境,强烈建议使用连接池(Connection Pool),以提高性能和资源管理效率,连接池会自动管理多个连接,减少重复建立连接的开销:

const pool = mysql.createPool({
  host: 'localhost',
  user: 'root',
  password: 'your_password',
  database: 'test_db',
  waitForConnections: true,
  connectionLimit: 10,   // 最大连接数
  queueLimit: 0
});
// 使用Promise方式查询
pool.promise()
  .query('SELECT * FROM products')
  .then(([rows]) => {
    console.log('产品数据:', rows);
  })
  .catch(err => {
    console.error('查询错误:', err);
  });

安全注意事项不容忽视:

  1. 永远不要将敏感信息(如密码)硬编码在代码中,应使用环境变量(如dotenv库)管理配置。
  2. 使用参数化查询或预处理语句防止SQL注入攻击,
    const userId = 5;
    pool.query('SELECT * FROM users WHERE id = ?', [userId], (err, results) => {
    // 处理结果
    });

Node.js连接MySQL需依赖mysql2等库,通过配置连接参数实现通信。关键步骤包括安装库、配置连接信息、使用连接池优化性能,并注重查询安全,掌握这些方法后,开发者可轻松构建基于Node.js和MySQL的数据驱动应用。

未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网

原文地址:https://www.html4.cn/9156.html发布于:2026-08-06