分析MySQL执行过程

Mysql传统关系型数据库

概念

关系型数据库的⼀个常⻅⽤法是存储⻓期的报告数据,并将这些报告数据⽤作固定时间范围 内的聚合数据。收集聚合数据的常⻅做法是:先将各个⾏插⼊到⼀个报告表⾥⾯, 之后再通 过扫描这些⾏来收集聚合数据, 并更新聚合表中⺒有的那些⾏。

图解刨析MySQL的执行过程

1.客户端/服务器发送TCP通信协议

2.SQL查询判断是否有缓存(多次查询相同结果Mysql也具有缓存)如果有缓存直接返回结果不走3.4.5步

3.缓存不存在解析SQL,通过解析器得到解析树,再进行预处理再得到新的解析树 查询前explain可得到解析树

4.该解析树是否可以得到优化(查询优化器)

5.生成执行计划>查询执行引擎>存储引擎>从磁盘里拿数据(索引是最后触发的,建立索引会增大内存表的空间)
具体的大小Mysql也没有给出官方的答案,大概是四分之一吧。没有索引就要进行全表扫描
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值