分析mysql索引使用情况


查询是数据库中最频繁的操作。提高了查询速度可以有效的提高MYSQL数据库的性能。
通过对查询语句的分析,可以了解查询语句的执行情况。MYSQL中,可以使用
EXPLAIN语句和DESCRIBE语句来分析查询语句。

下面使用EXPLAIN语句来分析一个查询语句

表结构如下

分析mysql索引使用情况_第1张图片
EXPLAIN select s_name from student ----->全表扫描

针对s_name列建立一个单列索引

CREATE INDEX index_name on student(s_name)

 再次执行  EXPLAIN select s_name from student

 

索引可以提高查询速度,但是有时候即使使用的是索引,但索引并不起作用

1.在查询中使用like关键字

    如果匹配字符串的第一个字符为"%"时,索引失效,反之则生效

2. 在查询语句中使用多列索引,只有查询条件使用了使用了索引字段的第一个字段时,索引才会被使用

在birth和sex两列建立多列索引:CREATE index birth_sex_index on student(s_birth,s_sex)

3.查询中使用or关键字,如果or前后两个条件的字段都有索引时,索引生效,如果有一个列没有索引即失效

删除刚才的多列索引,这样会导致全表扫描

 

你可能感兴趣的:(mysql)