主题
MySQL · 必学内容图
1. 架构与 SQL 执行
MySQL 分层架构:连接器/查询缓存/分析器/优化器/执行器/存储引擎
一条 SELECT / UPDATE 的完整执行旅程
Server 层 vs InnoDB 层职责分界
Buffer Pool / Change Buffer / 后台线程等 InnoDB 内存结构
InnoDB 物理存储:页、区、段、表空间、行格式
information_schema / performance_schema / sys 库
show processlist 与连接管理
2. 索引
B+ 树结构与页、三层 B+ 树容量推导
B+ 树 vs B 树 vs 哈希索引选型
聚簇索引 vs 二级索引、回表
主键选择(自增/雪花/UUID)与页分裂
最左前缀原则与索引下推 ICP
覆盖索引
EXPLAIN 执行计划(type/key_len/rows/Extra)
索引失效场景
3. 事务与 MVCC
ACID 及各自实现机制
四种隔离级别与脏读/不可重复读/幻读
RR 下幻读:快照读 vs 当前读
4. 锁
S/X 锁、记录锁/间隙锁/临键锁/意向锁
Next-Key Lock 加锁规则与退化规则
无索引更新锁全表
死锁场景(AB-BA、间隙锁互等)与排查(SHOW ENGINE INNODB STATUS)
死锁预防实践
5. 日志
redo log:WAL、LSN、checkpoint、组提交、崩溃恢复
undo log:回滚与 MVCC
binlog:Statement/Row/Mixed、复制与归档
两阶段提交与崩溃恢复判定
双 1 参数(sync_binlog / innodb_flush_log_at_trx_commit)
doublewrite buffer
6. 优化 / SQL / 慢查询
SQL 基本功:JOIN、GROUP BY、子查询、EXISTS vs IN
JOIN 算法:NLJ / BNL / Hash Join
慢日志与 pt-query-digest
索引失效大全
深分页 / 大偏移量 LIMIT / ORDER BY filesort
优化器统计信息与直方图
7. 主从复制与高可用
binlog 复制原理(dump/IO/SQL 三线程)与 relay log
主从延迟排查、并行复制(LOGICAL_CLOCK / WRITESET)
大事务导致延迟
MGR / InnoDB Cluster / 故障切换与 RPO-RTO
MySQL 不适用场景
8. 分库分表
9. 备份与 DDL
逻辑备份 mysqldump vs 物理备份 xtrabackup
全量 + 增量 + binlog 时间点恢复
Online DDL 原理(inplace/instant、copy)
gh-ost / pt-osc 在线变更
大表 DDL 风险
10. 表设计与新特性
范式 vs 反范式
字段类型选型(int/varchar/时间/enum)
NULL 的代价、字符集 utf8mb4
MySQL 8.0:窗口函数、CTE、降序索引、invisible index、原子 DDL
count(\*) 原理与区别
自增主键(auto_increment 空洞、锁模式)
权限模型与安全(授权、SQL 注入防护)