SQL优化思路
来源:互联网 发布:数控车床椭圆编程实例 编辑:程序博客网 时间:2024/05/21 16:58
SQL优化步骤
1. 使用pt-query-digest分析慢日志,拿到调用频率高并且执行时间长的语句。
2. 获取语句相关表的信息,以及explain等相关信息,一般收集如下信息
- l 执行计划:explain query;
- l 详细执行计划:explain extended query;show warnings;
- l 相关表信息:show create table test1;
- l 语句执行开销:show profile for query num;
- l 数据量:select count(0) from table;
- l 相关表的索引信息:show index for table;
- l my.cnf查询相关参数如各类buffer等
3. 进行初步分析,诊断SQL语句,查看在SQL层面能否带来提升,一般应对手段如下
- l 条件上拉、下推
- l 子查询合并、展开
- l 添加索引、优化索引
- l distinct、group by、orderby尽量利用索引减少文件排序
- l 子查询尽量转换为join,最好消除
- l 尽量减少聚合函数,将复杂查询转换为多表链接
- l 尽量优化等价谓词,尽可能利用索引
- l join的一些优化,连接消除、去除中间表等
4. SQL无优化空间考虑从业务逻辑层面入手。常用手段如下
- l 增加冗余字段
- l 拆分表(水平/竖直)
- l 使用分布式
- l 将大事务拆分为多个小事务
- l 精简数据库的设计,减少使用存储过程、触发器等
5. 对硬件进行优化,升级服务器硬件。
3、4步骤可与调整系统参数相结合,具体使用方法视具体业务而定。
优化投入收益如下
业务优化投入大,收益大
语句优化投入小,收益大
硬件优化投入大,收益小
优化优先级为语句优化>业务优化>硬件优化
0 0
- SQL优化解决思路
- SQL优化思路
- sql优化分析思路
- SQL优化思路
- sql优化思路整理
- MySQL的SQL优化思路
- 优化思路整理-3-sql优化
- 面试中SQL优化回答思路
- SQL优化【基础08】 - 耗能SQL分析一般流程思路
- SQL/PLSQL性能优化思路和工具使用【不断完善】
- Oracle DBA做SQL优化的最佳思路
- Oracle SQL优化必要的全表扫描思路分析
- SQL优化的思路及基本原则(mysql)
- 解析IBM SQL-on-Hadoop的优化思路
- Hadoop平台中SQL优化的四个思路
- SQL优化的思路及基本原则(mysql)
- SQL优化思路&结果集重用优化、分区索引优化测试
- Mysql优化_01优化思路
- 小白的开始
- 以反射Gray码的顺序生成0,1的n元组的算法-组合数学
- 通过Jquery的Ajax方法读取将table转换为Json
- centos 安装jenkins
- 习惯的力量
- SQL优化思路
- Docker系列~将镜像推送到DockerHub(七)
- synchronization()
- 论文笔记 《Fast R-CNN》
- kmp算法原理分析
- 第一个CUDA程序
- (一)loadrunneran12.53安装与汉化
- Angualrjs——定义全局变量的方法
- 【文智背后的奥秘】系列篇——自动文本分类