【MYSQL优化那些事——①】

🌴🌴这几天就不先发无题系列的文章了,虽然已经写了…
🌴🌴今天纳,聊聊mysql查询语句优化的那些事
🌴🌴怎么查询速度快怎么来,
🌴🌴大不了删库跑路是吧

请添加图片描述

反正,那又如何,不是么


🍪今天上司看你不爽,直接一大串代码丢你,说:“优化下查询速度”

🍉傻眼了吧?我也傻眼了 ,啥也别说先执行下吧!

在这里插入图片描述

🍪好家伙21秒的查询速度,我脑海还在想是能有什么优化的地方时,手已经在熟练的打开百度,打开csdn,打开博客园,打开。。。

来吧,展示!

在这里插入图片描述

🌲佛说:多表联查有什么好优化的?
🌲我说:但凡多看几篇我的文章,也不至于这么问我
(开个玩笑哈。)

🍉多表联查这里有个知识点了,那就是驱动表
(不理解什么是驱动表的百度去吧)

🌴开玩笑的了,我怎么可能让可爱的你们去百度看一大堆理论呢?
🌴简而言之,驱动表就是两个表关联时数据少的那个表做驱动表,查询速度最快

好,理论成立,实践开始!

在这里插入图片描述

🍉看见没!看见没!15秒

等啥呢?还不快点挨个试试?

在这里插入图片描述

🌻确定速度最快的关联方式后,速度提升到了15秒,还能怎么优化呢?别急,再往下看

在这里插入图片描述

🍪改完之后还是15秒????

在这里插入图片描述

🍪 那这里先晾着,接着往下看有什么能改的

在这里插入图片描述
在这里插入图片描述

🍉 好的23秒,放弃

🍪完了现在还能怎么改?嗯。。。索引 ?!

🍪 得吧,先来看下索引使用情况, explain 加上!

在这里插入图片描述

🍪有索引!!还很多!?不对劲,先看下到底有多少个索引

在这里插入图片描述

🍪不查不知道!

在这里插入图片描述

🍪我去??不知道一个表最好不超过5个索引吗?
(小声逼逼赖赖:一看就是不好好看老夫写的文章)

优化点找到了一个了:索引太多!

怎么办?别急,先看每个表的索引有哪些,实际用到的索引又有那些
理论存在。实践开始!

先看每个表有什么索引

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

🍉咦,原来才四个表啊…
🍉好,接着看实际用到的索引

在这里插入图片描述

🍉好,我们在对比一下

请添加图片描述

🍉没用到的索引怎么办?方法多了去咯
🍉我就写其中一个思路吧,创建一各组合索引,直接强制指定使用这个索引

/*新建一个组合索引*/
create index 索引名 on 哪个表(字段1,字段2,...)
/*强制使用这个索引,懂加在哪里?别问,百度!*/
force index 索引名

🍉🍉🍉🍉🍉好了,这里就不演示了,因为我的这个用户没有权限,目前为止两个地方优化了,差不多得了 🍉🍉🍉🍉🍉
(小声逼逼赖赖:才不是因为懒)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值