LEARNING PATH · 03

数据库

从存储结构、查询执行到并发控制,理解性能与正确性的来源。

1 篇已发布 5 篇规划中
学习目标

能够解释索引、事务、锁和连接池的工作方式,并用可验证的方法诊断查询问题。

SYSTEM

核心知识体系

先建立模块内的概念顺序,再通过关联主题连接到完整工程链路。

01存储引擎
02索引与执行计划
03事务与 MVCC
04锁与死锁
05容量与连接
READING ORDER

推荐学习顺序

首篇重点文章可以直接阅读;规划中内容展示摘要与完整大纲,不以薄内容页面冒充已发布文章。

01
已发布中级
22 分钟

B+Tree 索引为什么有效:从数据页到查询路径

从磁盘页、树高和局部性解释 B+Tree,再连接联合索引、回表、覆盖索引与执行计划。

前置:掌握基础 SQL
查看内容大纲
  1. 问题背景:索引优化的对象是什么
  2. 数据页与 B+Tree
  3. 聚簇索引和二级索引
  4. 联合索引与最左前缀
  5. 实践:读懂执行计划
  6. 回表、覆盖与常见误区
  7. 维护成本与总结
02
规划中中级
20 分钟

MySQL 存储引擎:数据页、日志与持久化

梳理 InnoDB 数据页、Buffer Pool、Redo Log 和 Undo Log 如何协同。

前置:了解关系数据库基础
查看内容大纲
  1. 页与区
  2. Buffer Pool
  3. Redo Log
  4. Undo Log
  5. 刷盘与恢复
03
规划中中级
20 分钟

SQL 优化方法:从执行计划到可验证改写

以执行计划、数据分布和基准测试为依据,避免只背优化口诀。

前置:掌握 SQL 与索引基础
查看内容大纲
  1. 建立基线
  2. 读取执行计划
  3. 识别扫描与排序
  4. 改写与索引
  5. 验证回归
04
规划中中级
22 分钟

事务与隔离级别:一致性和并发的取舍

比较脏读、不可重复读、幻读与 MVCC,说明隔离级别并非越高越好。

前置:了解 SQL 事务语法
查看内容大纲
  1. ACID 的工程含义
  2. 并发现象
  3. 隔离级别
  4. MVCC
  5. 选择与验证
05
规划中高级
22 分钟

数据库锁机制:范围锁、死锁与诊断

说明行锁、间隙锁、加锁范围、锁顺序以及死锁日志的诊断方法。

前置:理解事务与索引
查看内容大纲
  1. 锁的粒度与模式
  2. 范围锁
  3. 死锁形成
  4. 诊断日志
  5. 缩短事务
06
规划中中级
16 分钟

连接池与数据库容量:不要把连接数当作性能

讨论池大小、排队、超时、数据库执行能力和过载保护之间的关系。

前置:了解数据库连接方式
查看内容大纲
  1. 连接的真实成本
  2. 池大小
  3. 等待与超时
  4. 过载保护
  5. 容量验证
CONNECTIONS

模块关联

数据库

知识会跨越页面边界:当前模块中的实践,会在关联模块中成为新的前置条件。

PUBLISHED

已发布重点文章

数据库中级

B+Tree 索引为什么有效:从数据页到查询路径

从磁盘页、树高和局部性解释 B+Tree,再连接联合索引、回表、覆盖索引与执行计划。