← 返回学习方向

关系型数据库 · 2-4 个月

MySQL学习路线

从 SQL 查询、表设计和索引开始,理解事务、锁、执行计划、备份和基础运维。

4 个阶段适合所有需要持久化业务数据的前端、后端和数据方向学习者。
MySQL Reference ManualMySQL 官方参考手册。访问官方资料 ↗

学习方法

每个阶段都要完成三件事

理解

能用自己的话解释

不要只记语法,先说清它解决什么问题。

练习

从空目录做项目

减少照抄,主动处理输入、错误和边界情况。

验收

通过检查再继续

不会的部分回到文档和调试器,而不是跳过。

学习顺序

MySQL的 4 个阶段

建议按顺序展开学习。时间为每周投入 8-12 小时的参考值。

01基础 · 2-3 周SQL 查询基础能完成常见增删改查和聚合查询。

需要学习

  • SELECT、WHERE、ORDER BY 与 LIMIT
  • INSERT、UPDATE、DELETE
  • 聚合、分组、JOIN 与子查询

动手练习

  • 设计学生成绩表
  • 完成多表查询
  • 编写统计报表 SQL

进入下一步前

  • UPDATE/DELETE 前先确认条件
  • 理解 INNER/LEFT JOIN
  • 能处理 NULL

官方资料与延伸阅读

MySQL Tutorial官方数据库与 SQL 入门。打开 ↗
02核心 · 3-5 周表设计与索引能设计约束清楚、查询高效的业务表。

需要学习

  • 数据类型、主键、外键与约束
  • 范式和业务冗余取舍
  • B-tree 索引、联合索引和覆盖索引

动手练习

  • 设计电商订单模型
  • 为慢查询增加索引
  • 比较不同索引顺序

进入下一步前

  • 不滥用 varchar 和 text
  • 索引服务真实查询
  • 知道最左前缀原则

官方资料与延伸阅读

Optimization官方优化章节。打开 ↗
03进阶 · 3-5 周事务、锁与执行计划能分析并发修改和慢查询问题。

需要学习

  • ACID 与隔离级别
  • 行锁、间隙锁和死锁基础
  • EXPLAIN 和执行计划

动手练习

  • 模拟转账事务
  • 复现并处理死锁
  • 分析一个全表扫描

进入下一步前

  • 事务范围尽量小
  • 知道幻读和不可重复读
  • 会阅读 EXPLAIN 关键列

官方资料与延伸阅读

InnoDB Transactions事务和锁模型。打开 ↗
04运维 · 2-4 周备份、安全与基础运维能安全维护开发和小型生产数据库。

需要学习

  • 用户、权限和最小权限
  • 备份、恢复和迁移
  • 慢查询日志、容量和监控

动手练习

  • 创建只读用户
  • 完成一次备份恢复
  • 启用并分析慢查询

进入下一步前

  • 定期验证备份可恢复
  • 应用不使用 root 连接
  • 变更前有回滚方案

官方资料与延伸阅读

Backup and Recovery官方备份恢复指南。打开 ↗