MySQL架构‍时关于索引的相关问题 - SEO - 新闻资讯 - MySQL架构‍时关于索引的相关问题
新闻资讯

MySQL架构‍时关于索引的相关问题

发布时间:2021-04-08 浏览次数:15

MySQL是目前应用很广泛的数据系统之一,特别受很多个人用户和中小型企业的欢迎,由于我们在进行MySQL架构‍时,所需数据很多,为了更好更快的查找和修改某项数据,MySQL增加了索引功能,相当于书本的目录,使用相当方便,今天我们来看一下过于索引的相关问题。

4a10031aead89f5d

一.索引是什么样的数据结构

索引的数据结构和具体存储引擎的实现有关, 在MySQL中使用较多的索引有Hash索引,B+树索引等,而我们经常使用的InnoDB存储引擎的默认索引实现为:B+树索引。

二. 创建的索引有没有被使用到

MySQL提供了explain命令来查看语句的执行计划,MySQL在执行某个语句之前,会将该语句过一遍查询优化器,之后会拿到对语句的分析,也就是执行计划,其中包含了许多信息。可以通过其中和索引有关的信息来分析是否命中了索引,例如possilbe_key,key,key_len等字段,分别说明了此语句可能会使用的索引,实际使用的索引以及使用的索引长度。

三.那么在哪些情况下会发生针对该列创建了索引但是在查询的时候并没有使用

首先要明白使用不等于查询,当列参与了数学运算或者函数在字符串like时左边是通配符,类似于'%aaa',当mysql分析全表扫描比使用索引快的时候不使用索引,当使用联合索引,前面一个条件为范围查询,后面的即使符合左前缀原则,以上将无法使用索引。

还有一个更为重要的问题是如何在MySQL架构‍时建立索引,为了能使我们在查找数据时的效率更高,我们需使用出现频率较多的字段作为查询词,这个可以参照网页搜索中的关键词,在使用联合索引时还要考虑字段顺序的问题。

相关推荐

产品试用 产品试用
400-820-6580 免费电话