当前位置:Gxlcms > 数据库问题 > mysql索引优化

mysql索引优化

时间:2021-07-01 10:21:17 帮助过:3人阅读

这里记录一些看了《高性能mysql》后的一些学习心得

在弄清楚mysql innoDB前要提前了解索引的原理,最基本的要了解磁盘结构与工作方式还有b-tree结构。

加索引的目的:

  1. 减少服务器执行sql时扫描的数据量
  2. 避免order by或者group by等操作的时候产生的临时表
  3. 将随机IO变成顺序IO

评价索引好坏的标准:

  1. 一星,索引将相关的数据放在一起
  2. 二星,索引中列的顺序与查询中的列的顺序是一样的
  3. 三星,索引中的列包含查询中的所有列

设计索引注意事项:

  1. 多个字段的联合索引要与查询的顺序一致,那么这里就涉及一个问题,在设计查询的时候应该把哪一列做为第一个被查询的字段呢?

e.g.使用如下原则:

 

技术分享

这样做的原因:第1级如果使用聚合少的键,那么就更容易让第2级更聚合,即需要去查询b-tree的次数变少。

mysql索引优化

标签:

人气教程排行