Mysql性能优化基础一

Explain详解
id:数值越大越先执行,数值相同的从上往下执行,id为null最后执行
select type:表示对应的行是简单还是复杂查询,simple简单查询不包含子查询和union;primary:复杂查询中最外层的select;subquery:包含在select中的子查询(不在from子句中);derived:包含在from子句中的子查询。MySQL会将结果存放在一个临时表中,也称为派生表。;union:在union关键字随后的selelct。具体详见下方链接:https://www.cnblogs.com/xiaoqiang-code/p/11404149.html
 

 

https://www.cnblogs.com/wangzun/p/7118646.html   索引基础概念

https://www.cnblogs.com/liehen2046/p/11052666.html       索引失效场景

https://blog.csdn.net/xiaoxiao48/article/details/105408602/     索引失效场景

https://blog.csdn.net/wwww6662003/article/details/25828455       in的优化

https://www.cnblogs.com/xiaoqiang-code/p/11404149.html           explain详解 重要

 

性能优化:
1、索引方面:
    覆盖索引:就是select的数据列只用从索引中就能够取得,不必从数据表中读取,换句话说查询列要被所使用的索引覆盖。
    根据最多检索条件放在比较靠前。
    Froce Index  强制索引
    增加联合索引
2、数据结构:List转HashMap 大数据量判断是否contains的时候,list转Map一个是O(n)一个是O(1)
3、改变业务实现逻辑,从最开始的数据一致性完全处理,到分离处理,对主业务表处理,对具体的标注信息夜间定时处理。避免性能紧张。
4、distinct替代为索引的 group by 
5、分库分表:mycat、shardingjdbc
数据库锁超时问题:
原因:操作太多太复杂,解决方法:只操作必要操作,不必要的开定时任务解决,避免锁超时可以减小操作数量。比如一条条

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值