MySQL学习路线:4周从入门到实战
🗓️ 整体学习周期建议(约 4~6 周)
| 阶段 | 时间 | 目标 |
|---|---|---|
| 第1周 | 基础入门 | 安装、基本概念、简单查询 |
| 第2周 | 核心语法 | 增删改查、条件、排序、分组等 |
| 第3周 | 表结构与关系 | 主外键、连接查询、子查询 |
| 第4周 | 高级特性 | 索引、事务、视图、存储过程等 |
| 第5-6周 | 实战项目 + 巩固 | 小型数据库项目实战 |
📘 详细学习内容
🔹 第一阶段:MySQL 基础入门(第1周)
目标:了解数据库基本概念,安装 MySQL,能执行简单查询。
- 什么是数据库?什么是关系型数据库?
- MySQL 是什么?与其他数据库(如 PostgreSQL、SQL Server)的区别
- 安装 MySQL(推荐使用 MySQL Community Server 或 Docker)
- 安装图形化工具(如 MySQL Workbench、DBeaver、Navicat)
- 基本命令行操作(登录、退出、查看数据库)
- SQL 语句基本规范(大小写、分号等)
SELECT查询最简单的数据(如SELECT * FROM table;)
✅ 动手练习:
- 创建一个数据库
school - 创建一张表
students(字段:id, name, age) - 插入几条数据并查询
🔹 第二阶段:SQL 核心语法(第2周)
目标:熟练使用 DML(数据操作语言)进行增删改查。
SELECT进阶:- 选择特定列
- 使用
WHERE过滤(=, >, <, BETWEEN, IN, LIKE, IS NULL) ORDER BY排序LIMIT限制结果数量
INSERT INTO插入数据UPDATE修改数据(注意 WHERE 条件!)DELETE FROM删除数据(谨慎使用)- 聚合函数:
COUNT(),SUM(),AVG(),MAX(),MIN() GROUP BY分组统计HAVING对分组结果过滤
✅ 动手练习:
- 统计学生人数、平均年龄
- 查询年龄大于18的学生,并按姓名排序
- 按班级分组统计人数
🔹 第三阶段:表设计与多表操作(第3周)
目标:理解关系模型,掌握多表关联查询。
- 数据类型(INT, VARCHAR, DATE, DATETIME, TEXT 等)
- 主键(PRIMARY KEY)、自增(AUTO_INCREMENT)
- 外键(FOREIGN KEY)与表间关系(一对一、一对多)
- 表的创建、修改、删除(DDL:CREATE, ALTER, DROP)
- 多表连接查询:
INNER JOINLEFT JOIN/RIGHT JOIN- 自连接(self-join)
- 子查询(嵌套查询):
SELECT ... WHERE id IN (SELECT ...)
✅ 动手练习:
- 创建
classes表和students表,建立外键关联 - 查询每个学生的班级名称(JOIN)
- 查询没有分配班级的学生(LEFT JOIN + WHERE IS NULL)
🔹 第四阶段:高级特性与优化(第4周)
目标:掌握生产环境中常用功能,提升性能意识。
- 索引(Index):
- 什么是索引?为什么需要?
- 创建普通索引、唯一索引、组合索引
- 索引的优缺点(加快查询 vs 减慢写入)
- 事务(Transaction):
- ACID 特性
BEGIN,COMMIT,ROLLBACK- 事务隔离级别简介
- 视图(View):虚拟表,简化复杂查询
- 存储过程与函数(了解即可,初学可略)
- 用户权限管理(
CREATE USER,GRANT) - 数据备份与恢复(
mysqldump)
✅ 动手练习:
- 给
students.name加索引,对比查询速度 - 模拟转账操作,使用事务保证一致性
🔹 第五~六阶段:实战项目(巩固提升)
目标:综合运用所学知识,完成一个完整的小项目。
项目建议(任选其一):
-
图书管理系统
- 表:books, authors, categories, borrow_records
- 功能:借书、还书、查询某作者的书、统计借阅次数
-
电商简易后台
- 表:users, products, orders, order_items
- 功能:下单、查看订单、统计销量
-
博客系统数据库
- 表:users, posts, comments, tags
- 功能:发帖、评论、按标签筛选文章
✅ 要求:
- 设计合理的表结构(含主外键)
- 编写至少 10 条实用 SQL 语句(含 JOIN、GROUP BY、子查询等)
- 尝试加索引优化慢查询
📚 推荐学习资源
- 免费教程:
- 菜鸟教程 - MySQL
- W3Schools SQL
- MySQL 官方文档(中文)
- 视频课程(B站/YouTube):
- 搜索“MySQL 入门 黑马程序员”或“尚硅谷 MySQL”
- 练习平台:
- LeetCode 数据库题
- SQLZoo
- HackerRank SQL
