MySQL 性能调优之SQL

原文: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的工作量.

 

posted @ 2018-06-02 17:02  点点花飞谢  阅读(156)  评论(0编辑  收藏  举报