同一条查询为什么突然变慢:执行计划与统计信息后端随身听

同一条查询为什么突然变慢:执行计划与统计信息

12分钟 ·
播放数4
·
评论数0

代码没有发布、索引也没有删除,同一条查询为什么会从几十毫秒突然变成几秒?常见原因是数据分布发生变化,优化器基于估算选择了另一条执行路径。

这一集讲清数据库优化器如何估算成本、统计信息为什么会失真,以及排查慢查询时如何比较“预计读取多少行”和“实际读取多少行”。

重点内容:

- SQL 文本与执行计划为什么不是一回事

- 优化器如何比较不同访问路径的成本

- 选择性和数据倾斜如何影响索引价值

- 统计信息过期为什么会选错计划

- 普通执行计划与实际执行分析的区别

- 为什么强制索引只适合作为谨慎的临时手段

- 查询突然变慢时应保存哪些现场信息

英文词对照:

- Query Optimizer:查询优化器

- Execution Plan:执行计划

- Cardinality:基数估计

- Selectivity:选择性

- Histogram:直方图统计

- Data Skew:数据倾斜

- EXPLAIN ANALYZE:实际执行分析

- Index Hint:索引提示