MySQL 性能调优之SQL
2024-08-27 08:29:58
原文:http://bbs.landingbj.com/t-0-245451-1.html
对于SQL的优化,我们主要提供调整执行计划。优化SQL的方法有:缩短访问的路径、尽早过滤数据、尽可能减少排序、降低SQL复杂度、避开MySQL优化器Bug。
在真实环境中,优化SQL主要从以下方面考虑:
减少表连接,减少复杂SQL,拆分成简单SQL;
减少排序:非必要不排序,利用索引排序,减少参与排序的记录数;
尽量避免 SELECT *;
尽量用 JOIN 代替子查询;
尽量少使用 OR,使用 IN 或者 UNION(UNION all)代替;
尽量用 UNION ALL 代替 UNION;
尽量早的将无用数据过滤:选择更优的索引,先分页再 JOIN;
避免类型转换:索引失效;
优先优化高并发的SQL,而不是执行频率低某些“大”SQL;
从全局出发优化,而不是片面调整;
尽可能对每一条SQL进行 EXPLAIN;
线上环境,尽可能地找出那些最消耗资源的SQL,然后再优化它。对于一个企业而言,招到优秀的程序员可以大大地降低DBA的工作量.
最新文章
- redis缓存技术学习
- proteus 查找 仿真元件 中英文对照 [持续更新]
- VS2010环境下C++工程相关问题汇总
- struts 标签库注解
- 无状态、REST、RESTful 和 Web Services【整理】
- javascript 随机显示指定内容
- SpringMVC底层数据传输校验的方案
- CASE WHEN用法
- 《转载》最新鲜最详细的Android SDK下载安装及配置教程
- Unity3d Platformer Pro 2D游戏开发框架使用教程
- java工具类 获取包下所有类
- 20165215 2017-2018-2 《Java程序设计》第7周学习总结
- [PHP]更新中间关联表数据的两种思路
- crontab命令使用文档.txt
- 步步深入MySQL:架构->;查询执行流程->;SQL解析顺序!
- python 第三库卸载办法
- zabbix服务端安装指南及常见问题解决
- 项目报错“JavaServer Faces 2.2 can not be installed : One or more constraints”等一系列问题
- Java反射API研究(4)——Class中的重要对象
- 每日英语:Dishing the Dirt on Hand-Washing Guidelines