缺什么补什么:别让 SQL 停在增删改查

很多转岗做后端或运维的人,对 MySQL 的认知停留在能写几句增删改查、会用可视化工具点点鼠标。但只要遇到慢查询、大表锁死、主从延迟,就只会重启或者照搬网上的碎片方案。这门课针对的就是这种能力断层:它不带你从零安装数据库,而是把存储引擎、索引结构、事务隔离、锁机制这些平时被当成黑盒的东西一次性梳理清楚。适合已经能独立写 SQL、跑过基本业务逻辑,但讲不清 B+ 树为什么快、next-key 锁怎么挡幻读的人。如果你连 join 语法都陌生,建议先补基础再来;如果你正准备中级以上的技术面试,或者刚接手一个性能拉胯的老系统,这份梳理正好用来查漏补缺。

怎么啃:先抓骨架,再抠细节

这份资料虽然以全知识点梳理为主线,但别从头到尾匀速播放。建议先看存储引擎和索引这两块,因为后续的查询优化、锁行为全都建立在对物理存储的理解上。看完索引结构,立刻对照执行计划那一节,自己造几张千万级测试表,用 explain 看走没走索引、走了哪个索引,比干看视频强十倍。接着啃事务与锁,重点弄懂四种隔离级别分别解决什么问题、MVCC 怎么靠版本链实现快照读、行锁和间隙锁在范围查询时到底锁住了哪些区间。锁这块最绕,务必边画图边看:拿纸画出间隙和记录的边界,标上共享锁和排他锁,比单纯听讲效率高。最后看主从复制和高可用,理解 binlog、redo log、undo log 的协作关系,以及主从延迟的根因,这是排查线上故障的底气。

学完能干什么:从只会用到能定位

看完这份梳理,你应该能独立做几件具体的事:拿到一条慢 SQL,能从索引设计、数据分布、隔离级别三个维度拆出瓶颈,而不是盲目加索引;遇到死锁日志,能看懂锁等待链路,定位是哪条事务没提交导致的;在设计新表时,能根据查询模式选对主键类型、联合索引顺序和字符集,提前避开大字段、深分页这些坑。配套练习上,资料里的知识点要和本地实操绑定:每听完一个机制,就手动构造对应场景去复现。比如听完间隙锁,就开两个事务窗口,一个做范围更新,另一个尝试插入,观察锁等待和死锁报错;听完索引下推,就对比关闭前后的扫描行数差异。别把这份梳理当相声听,手不动,这些机制隔天就忘。目标是建立一张完整的 MySQL 心智地图,下次遇到问题,能快速定位是存储层、SQL 层还是架构层的事,而不是瞎猜。

课程目录

1 MySQL全知识点梳理 (55:00)