暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
老司机总结的12条 SQL 优化方案.pdf
40
17页
0次
2023-12-01
免费下载
老司机总结的 12 SQL 优化方案(非常实用)
在开始介绍如何优化 sql 前,先附上 mysql 内部逻辑图让大家有所了
1)连接器: 主要负责跟客户端建立连接、获取权限、维持和管理
连接
2)查询缓存: 优先在缓存中进行查询,如果查到了则直接返回,
如果缓存中查询不到,在去数据库中查询。
MySQL 缓存是默认关闭的,也就是说不推荐使用缓存,并且在
MySQL8.0 版本已经将查询缓存的整块功能删掉了。这主要是它的使
用场景限制造成的:
先说下缓存中数据存储格式:keysql 语句)- value(数据
值),所以如果 SQL 语句(key)只要存在一点不同之处就
会直接进行数据库查询了;
由于表中的数据不是一成不变的,大多数是经常变化的,而
当数据库中的数据变化了,那么相应的与此表相关的缓存数
据就需要移除掉;
3析器/分析器: 分析器的工作主要是对要执行的 SQL 语句进行
词法解析、语法解析,最终得到抽象语法树,然后再使用预处理器对
抽象语法树进行语义校验,判断抽象语法树中的表是否存在,如果存
在的话,在接着判断 select 投影列字段是否在表中存在等。
4)优化器: 主要将 SQL 经过词法解析、语法解析后得到的语法
树,通过数据字典和统计信息的内容,再经过一系列运算 ,最终得出
一个执行计划,包括选择使用哪个索引
在分析是否走索引查询时,是通过进行动态数据采样统计分
析出来;只要是统计分析出来的,那就可能会存在分析错误
的情况,所以在 SQL 执行不走索引时,也要考虑到这方面
的因素
5)执行器: 根据一系列的执行计划去调用存储引擎提供的 API
口去调用操作数据,完成 SQL 的执行。
一、SQL 语句及索引的优化
of 17
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜