Node.js连接MySQL数据库方法
时间:2025-11-26 14:18:53 101浏览 收藏
偷偷努力,悄无声息地变强,然后惊艳所有人!哈哈,小伙伴们又来学习啦~今天我将给大家介绍《Node.js连接MySQL数据库教程》,这篇文章主要会讲到等等知识点,不知道大家对其都有多少了解,下面我们就一起来看一吧!当然,非常希望大家能多多评论,给出合理的建议,我们一起学习,一起进步!
Node.js连接MySQL需配置连接参数并使用mysql2模块,通过Express创建REST API实现前后端通信。1. 安装MySQL和Node.js依赖,初始化项目并安装mysql2;2. 创建db.js文件建立数据库连接;3. 在Express路由中查询数据并返回JSON;4. 前端用fetch请求接口,渲染数据;5. 使用cors中间件解决跨域;6. 实现注册功能:前端提交表单,后端插入数据到MySQL;7. 推荐使用环境变量存储密码,生产环境启用连接池提升性能。全流程为:前端请求→后端查库→返回数据→前端渲染。

Node.js连接MySQL数据库是全栈开发中的常见需求。前端JavaScript负责页面交互,后端Node.js通过连接MySQL实现数据持久化存储。下面详细介绍如何使用Node.js连接MySQL,并与前端JS整合,完成一个简单的全栈应用。
安装MySQL和Node.js依赖
确保本地已安装MySQL服务并启动。可以通过命令行或可视化工具(如MySQL Workbench)确认数据库正常运行。
在项目目录下初始化Node.js项目:
npm init -y安装MySQL驱动包:
npm install mysql2若需支持Promise语法(推荐),可同时安装并使用mysql2/promise模块。
Node.js连接MySQL并查询数据
创建一个db.js文件用于管理数据库连接:
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'your_password',
database: 'test_db'
});
connection.connect((err) => {
if (err) throw err;
console.log('MySQL数据库连接成功');
});
module.exports = connection;
在路由文件中使用该连接查询数据,例如获取用户列表:
const express = require('express');const connection = require('./db');
const app = express();
app.get('/users', (req, res) => {
connection.query('SELECT * FROM users', (err, results) => {
if (err) throw err;
res.json(results);
});
});
app.listen(3000, () => {
console.log('服务器运行在 http://localhost:3000');
});
前端JS请求后端接口获取数据
在HTML页面中使用原生JavaScript或框架(如Vue、React)调用后端API:
fetch('http://localhost:3000/users').then(response => response.json())
.then(data => {
console.log(data); // 显示用户数据
data.forEach(user => {
document.body.innerHTML += `
${user.name}
`;});
})
.catch(err => console.error('请求失败:', err));
注意:需处理跨域问题。可在Express中使用cors中间件:
const cors = require('cors');
app.use(cors()); // 允许所有来源访问
整合前后端实现完整流程
一个典型的全栈流程包括:前端发送请求 → 后端接收并查询MySQL → 返回JSON数据 → 前端渲染页面。
示例场景:用户注册功能
- 前端表单提交用户名和邮箱
- Node.js接收POST请求,使用
body-parser解析数据 - 插入数据到MySQL的
users表 - 返回成功状态,前端提示“注册成功”
插入语句示例:
app.post('/register', (req, res) => {const { name, email } = req.body;
connection.execute(
"INSERT INTO users (name, email) VALUES (?, ?)",
[name, email],
(err, result) => {
if (err) throw err;
res.send('注册成功');
}
);
});
基本上就这些。Node.js连接MySQL并不复杂,关键是配置好连接参数、处理异步操作、确保前后端通信顺畅。配合Express搭建REST API,再由前端JavaScript调用,即可实现动态网页应用。安全方面建议使用环境变量管理数据库密码,生产环境中启用连接池提升性能。
今天关于《Node.js连接MySQL数据库方法》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于全栈开发,express,RESTAPI,mysql2,Node.js连接MySQL的内容请关注golang学习网公众号!
-
502 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
212 收藏
-
492 收藏
-
474 收藏
-
459 收藏
-
387 收藏
-
337 收藏
-
396 收藏
-
174 收藏
-
383 收藏
-
496 收藏
-
283 收藏
-
471 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习