技巧解锁:应对优化器选错索引的智慧之道
本文为《MySQL归纳学习》专栏的第十一篇文章,同时也是关于《MySQL索引》知识点的第三篇文章。
相关文章:
MySQL索引大揭秘:优化查询的秘籍(上)
MySQL索引大揭秘:优化查询的秘籍(下)
在数据库优化的道路上,索引统计的更新机制和优化器选错索引是不可忽视的关键问题。本文将深入探讨这两个议题,揭示它们背后的奥秘。首先,详解索引统计的作用和更新机制,为你解决查询性能问题提供关键线索。其次,我们将剖析优化器选错索引的潜在风险,并阐述导致误导的原因。更重要的是,文章将为你呈现应对选错索引的实用方案,助你优化数据库查询,提升应用性能。
首先来看一下这张思维导图,对本文内容有个直观的认识。
接下来进入正文。
首先我们基于如下表结构进行讲解:
CREATE TABLE tt (
id int(11) NOT NULL AUTO_INCREMENT,
a int(11) DEFAULT NULL,
b int(11) DEFAULT NULL,
PRIMARY KEY (id),
KEY a (a),
KEY b (b)
) ENGINE=InnoDB;
接下来我们使用存储过程来新增数据,如下所示:
delimiter ;;
create procedure idata()
begin
declare i int;
set i=1;
START TRANSACTION;
while(i