Node.js 连接 MySQL 数据库指南
Node.js 连接 MySQL 数据库指南
作者:史展硕
发布日期:2025年8月14日
阅读时长:2分钟
原文:https://ohen.hashnode.dev/connect-mysql-database-with-nodejs
Node.js 作为一项杰出的技术发明,有效实现了Web项目的前后端分离。尽管 NoSQL 数据库日渐流行,MySQL 仍然是许多场景下的优质选择。
安装MySQL驱动
在Node.js中使用MySQL,首先需要安装mysql npm包:
$ npm i mysql
导入模块
根据项目模块规范选择导入方式:
// ES6+ 模块
import { mysql } from 'mysql';
// CommonJS 规范
const mysql = require('mysql');
创建数据库连接
建立与MySQL/MariaDB服务器的连接配置:
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'yourpassword',
database: 'yourdb',
port: 3306
});
建议:不要直接硬编码敏感信息,后续文章将介绍如何使用.env文件管理配置
测试连接
connection.connect((err) => {
if (err) {
console.error('连接失败:', err);
return;
}
console.log('数据库连接成功');
});
执行SQL查询
基础查询示例:
connection.query(sql, values, (error, results) => {
if (error) {
// 错误处理...
}
// 结果处理...
});
实用Promise封装
推荐将回调式查询封装为Promise:
function query(sql, values) {
return new Promise((resolve, reject) => {
connection.query(sql, values, (error, results) => {
if (error) return reject(error);
resolve(results);
});
});
}
// CommonJS导出
module.exports = query;
// ES6模块导出
export default query;
使用示例
query('SELECT * FROM users WHERE username = ?', [username])
.then(results => {
if (results.length > 0) {
res.json({ success: false });
} else {
res.json({ success: true });
}
})
.catch(error => {
console.error('查询错误:', error);
res.status(500).json({
success: false,
error: '数据库查询异常'
});
});