mysql优化(四)

上一博文提到Extra,本章根据个人理解说明Extra分析情况

Using filesort:发生文件内排序 ,创建索引 比如1 2 3,最后只用到 13, 2只能另起炉灶 相当于多操作一次 最好就是都用上,按照原来规划的方案执行

 

Using Temporary:产生临时表保存中间结果,临时表最消耗性能 ,由于分组 order by group by 没使用全索引 ,最好就是都用上,按照原来规划的方案执行

 

Using Index :产生覆盖索引 ,效率还是不错的

如果同时出现Using where ,表明索引被用来执行索引键值的查找

如果不出现的话,表明索引用来读取数据而非执行查找动作

 

单表索引建立:

如果建立索引的字段 用在range级别 会导致后面的索引失效,可以不对范围的字段进行索引,具体的根据业务需求建合适的索引

 

两表索引:

如果发生左外连接,对右表建立索引,好于对左表建立索引,右外链接同理

 

三表索引:

和两表同理,但是尽可能减少join语句中的NestedLoop的循环总次数,”永远是用小结果集驱动大结果集”.

优先优化内NestedLoop的内层循环、

保证join语句中被驱动表上join条件字段已经被索引,当无法保证呗驱动表的join条件字段被索引且内存资源充足的前提下,不要太吝啬joinBuffer的设置


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值