LNMP

当前位置:首页>LNMP

Mysql优化

时间:2019-04-17   访问量:13
select * from user where name is null
select * from user where name like '%a'

btree索引

B-TREE索引适合全键值、键值范围、前缀查找。

全值匹配,是匹配所有的列进行匹配、

匹配最左前缀。比如 a=1&b=2 那么会用到a的索引

匹配列前缀。 比如 abc abcd %abc

匹配范围 比如 in(3,5)

限制

索引的优点

1、减少服务器扫描表的次数

2、避免排序和临时表

3、将随机io变成顺序io

高性能索引策略

where num+1 =10 //bad

where num = 9 //good

不考虑排序和分组的情况。在选择性最高的列上,放索引,

mysql有两种方式生成有序的结果,一种是排序操作,一种是按索引顺序扫描,如果explain处理的type列的值是index。则说明mysql使用了索引

只有当索引的列顺序和order by子句的顺序一致的时候,并且所有的顺序都一致的时候。mysql才能使用索引进行排序。

不能使用索引的情况

select * from user where login_time > '2018-01-01' order by id des ,username asc #
select * from user where name = '11' order by age desc; //age 没有索引

https://blog.csdn.net/samjustin1/article/details/52212421


上一篇:explain分析SQL

下一篇:MySQL索引原理及慢查询优化

在线咨询

点击这里给我发消息 售前咨询专员

点击这里给我发消息 售后服务专员

在线咨询

免费通话

24小时免费咨询

请输入您的联系电话,座机请加区号

免费通话

微信扫一扫

微信联系
返回顶部