Nodejs连接操作Mysql数据库

1. 安装MySQL驱动程序

确保已经安装了适用于Node.js的MySQL驱动,推荐使用 mysql2引擎,该引擎提供了更好的性能和兼容性,可通过npm(Node包管理器)进行安装:

npm install mysql2

2. 导入模块并创建连接

在Node.js应用程序中,导入刚刚安装的mysql2模块,并根据数据库配置创建一个连接:

const mysql = require('mysql2');

// 假设这是从db_config.js文件获取的数据库配置
const dbConfig = require('./db_config.js');

// 创建连接池(推荐在生产环境中使用连接池提高性能和资源管理)
const pool = mysql.createPool({
  host: dbConfig.host,
  user: dbConfig.user,
  password: dbConfig.password,
  database: dbConfig.database,
  port: dbConfig.port,
  charset: 'utf8mb4', // 或其他适合的字符集
  connectionLimit: 10, // 连接池大小(可选)
});

// 使用连接池执行SQL操作
pool.query('SELECT * FROM your_table', (error, results, fields) => {
  if (error) {
    throw error;
  }
  console.log('Results:', results);
});

// 或者如果您只需要一次性的连接(非连接池),则可以:
const conn = await mysql.createConnection(dbConfig);

// 开始连接
await conn.connect();

try {
  const [rows, fields] = await conn.query('SELECT * FROM your_table');
  console.log(rows);
} catch (err) {
  console.error(err);
} finally {
  // 关闭连接(对于非连接池方式非常重要)
  await conn.end();
}

3. 注意事项

  • 上述代码示例使用了异步/await语法,这意味着该函数必须处于异步上下文中,例如使用async function定义。
  • 如果不使用ES6的Promise和async/await语法,可以使用回调函数或.promise()方法处理异步操作。
  • db_config.js应该包含类似这样的内容:
module.exports = {
  host: 'your_database_host',
  user: 'your_username',
  password: 'your_password',
  database: 'your_database_name',
  port: 3306, // 默认MySQL端口
};

4. 连接安全提示

  • 不要在源代码中明文存储数据库密码,最好将其存储在环境变量或密钥管理服务中。
  • 确保使用安全的连接(例如,启用SSL加密)以保护敏感数据传输。

相关内容链接解锁附上

原生node.js如何连接MySql数据库?-知乎

Node.js连接mysql数据库-CSDN技术社区

在Node.js项目中操作MySQL-知乎

使用Node.js连接和操作MySQL数据库-CSDN技术社区

使用Node.js连接和操作MySQL数据库-CSDN技术社区

nodejs连接mysql-CSDN技术社区

了解更多知识请戳下:

@Author:懒羊羊

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐