随笔 - 502  文章 - 1 评论 - 6 阅读 - 37万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

Mysql性能下降原因

JOIN连接过多 ,索引失效(单值,复合), 查询SQL过水, 

 

explian 语法分析SQL性能

https://blog.csdn.net/b1303110335/article/details/51174540

 

索引是什么?

是一个排好序的快速查找数据结构, 可以快速的定位数据位置,有比如二分查找算法,层次算法等等..

索引优势是什么?

提高数据检索速度,降低IO成本,  数据排序成本,降低CPU消耗

索引劣势是什么?

索引保存了主键和索引字段,指向实体类的记录, 所以占用空间, 每次执行写操作到记录,索引就会调整.. 有大量数据的时候,需要长时间研究最优索引(跟随业务变更)

索引分类?

单值 : 单独一个列

唯一: 列值唯一,可以为空

复合:一个索引多个列, (建议一张表的索引不超过5个)

索引结构?

BTree索引, Hash索引, full-text全文索引, RTree索引

BTree原理: 根据索引值,确定索引的区块,3层的Btree可以表示上百W的数据,只需3次IO, 

索引的适合场景?

主键自动唯一索引, 频繁查找,有和其他表存在外键关系, 统计和分组字,

索引的不适合场景?

频繁更新的字段不需要建立索引, 

某个字段有很多重复值,不需要建立. 计算方式为

 

posted on   1161588342  阅读(115)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示