品易云推流 关闭
文章详情页
文章 > MySQL > mysql如何提高索引的效率

mysql如何提高索引的效率

头像

小妮浅浅

2021-07-05 14:14:11469浏览 · 0收藏 · 0评论

说明

1、建立查询频率高、数据量大的表索引。

2、对于索引字段的选择,最佳候选列应从where子句的条件中提取。如果where子句组合较多,应选择最常用、过滤效果最好的组合。

3、使用唯一的索引,区分度越高,使用索引的效率越高。

4、索引可以有效提高查询数据的效率,但索引数量并不是越多越好。索引越多,维护索引的成本自然就越高。对于插入、更新、删除等DML操作频繁的手表,如果索引过多,会引入相当高的维护成本,降低DML操作效率,增加相应操作的时间消耗。此外,如果索引过多,MySQL也会犯选择困难病,尽管最终还是会找到可用的索引,但无疑会提高选择的成本。

5、使用短索引,索引创建后也存储在硬盘中,可以提高索引访问的I/O效率和整体访问效率。如果构成索引的字段总长度相对较短,则可以在给定大小的存储块中存储更多的索引值,从而有效提高MySQL访问索引的I/O效率。

6、由最左前缀和N列组成的组合索引,相当于创建了N个索引。如果在查询时where子句中使用组成索引的前几个字段,则该查询SQL可以使用组合索引来提高查询效率。

实例

创建复合索引:
 
  CREATE INDEX idx_name_email_status ON tb_seller(NAME,email,STATUS);
 
 就相当于
  对name 创建索引 ;
  对name , email 创建了索引 ;
  对name , email, status 创建了索引 ;

以上就是mysql提高索引效率的方法,希望对大家有所帮助更多mysql学习指路:MySQL

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图