关系型数据库 · 2-4 个月
MySQL学习路线
从 SQL 查询、表设计和索引开始,理解事务、锁、执行计划、备份和基础运维。
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 连接
- 变更前有回滚方案