索引优化

1.查看表的索引情况

show index from students\G;

2.创建索引
index_name:索引名
students(name):为students表的name这一列创建索引。

create index index_name on students(name);


3.使用索引查询数据,因为是在name这个列设置的索引,因此拿name作为过滤条件可以利用到索引。

select * from students where name='Sun Dasheng'

<以上结果看似与普通查询无异,但可根据使用 EXPLAIN来查看是否有使用index,如果图中的内容显示索引而不是NULL则表示利用到了index>

EXPLAIN select * from students where name='Sun Dasheng';

 

4.删除索引则用drop

DROP INDEX index_name ON students;

 

结论:
1.不同的数据库优化器策略不同,比如一翻书就能找到的内容就没必要使用索引,这就是择优选择。
2.搜索严禁左模糊(以什么结尾)和全模糊(包含什么)的搜索条件一律无法使用索引,这样就会进行全局搜索、如果数据库数据量很大就会造成严重延迟甚至瘫痪。如: 左模糊:like '%xxx'  全模糊:'%xxx%'

posted on 2021-06-15 15:15  1251618589  阅读(1)  评论(0编辑  收藏  举报

导航