• sql优化分析

通过slow_log等方式可以捕获慢查询sql,然后就是减少其对io和cpu的使用(不合理的索引、不必要的数据访问和排序)
当我们面对具体的sql时,首先查看其执行计划
A.看其是否使用索引
B.查看其查询的记录数
C.确定索引的代价是否过高
D.是否可以使用复合索引
E.是否有“using temporary”
F.是否有“using filesort”

  • 创建高效索引

mysql的innodb有自己特殊的聚集索引(数据是按聚集索引的顺序存储的并和索引存储在一起),索引访问效率较高,次
要索引是通过先找到pk聚集索引,然后才能找到数据。
单列索引
单列索引比较简单,就是对单个列创建的索引,主键索引最好选择int类型,提高性能。
复合索引
复合索引是多列组合而成的索引,过滤效果越好的越放在前面,尽量通过索引完成过滤,回表只是取出额外的字段,当然如果
不需要回表,只扫描索引就可以获取所需数据最好了

  • sql写法注意事项

1)禁止3表以上的join
2)避免"select *"和排序功能共同使用
3)用jion替换子查询
4)用union all替换union
5)避免数据类型的转换,同数据类型比较
6)避免排序(通过索引或减少排序记录数)
7)对数据尽早过滤(复合索引过滤性更好的字段放的更靠前;尽量加少最后join结果集的数量)
8)把大sql拆分为多小sql
9)如果只是分组,用”group by a1 order by null“替换“group by a1”去除排序
10)禁止索引null列
11)字符例是否是前缀索引

转自:http://blog.csdn.net/wyzxg/article/details/7598964

转载于:https://www.cnblogs.com/olmlo/p/4809009.html

mysql sql优化及注意事项相关推荐

  1. mysql sql优化书籍_MySQL SQL优化的正确姿势

    大家好,我是知数堂SQL 优化班老师 网名:骑龟的兔子 已经很久没写文章了 今天分享一篇优化SQL 案例 slow query 里有如下 SQL 看下执行计划如下 从执行计划可以看出C表全表扫描了 那 ...

  2. MySQL SQL 优化参数 引发的悲剧

    大家好,我是知数堂SQL 优化班老师 网名:骑龟的兔子 今天给大家看一个案例来讨论,这个案例是真实案例,因为之前踩bug 导致数据库crash 所以临时关了优化器参数 set gloabl optim ...

  3. mysql sql注意事项_mysql sql优化及注意事项

    sql优化分析 通过slow_log等方式可以捕获慢查询sql,然后就是减少其对io和cpu的使用(不合理的索引.不必要的数据访问和排序) 当我们面对具体的sql时,首先查看其执行计划 A.看其是否使 ...

  4. MySQL SQL优化

    前言 有人反馈之前几篇文章过于理论缺少实际操作细节,这篇文章就多一些可操作性的内容吧. 注:这篇文章是以 MySQL 为背景,很多内容同时适用于其他关系型数据库,需要有一些索引知识为基础. 优化目标 ...

  5. mysql sql优化_浅谈mysql中sql优化

    说到sql优化,一般有几个步骤呢,在网上看到了一篇很不错的帖子.在这分享一下吧,也是自己学习的一个过程. 一.查找慢查询 1.1.查看SQL执行频率 SHOW STATUS LIKE 'Com_%'; ...

  6. 谈谈mysql优化_浅谈MySQL SQL优化

    本文首发于个人微信公众号<andyqian>,期待你的关注 前言 有好几天没有写文章了,实在不好意思.之前就有朋友希望我写写MySQL优化的文章.我迟迟没有动笔,主要是因为,SQL优化这个 ...

  7. 18.Mysql SQL优化

    18.SQL优化 18.1 优化SQL语句的一般步骤 18.1.1 通过show status命令了解各种SQL的执行频率 show [session|global] status; -- 查看服务器 ...

  8. mysql sql优化与调优机制详解_MySQL之SQL优化详解(一)

    目录 序言: 在我面试很多人的过程中,很多人谈到SQL优化都头头是道,建索引,explain分析,like全模糊会导致索引失效 云云,于是我问道:优化之前,需要找出数据库中比如超过2s的慢SQL,你是 ...

  9. mysql sql优化

    事情是这样的,之前的小伙伴碰到一个sql优化的问题,,三个表联查,速度很慢要十几秒,当然这个三个表数据有个几万条的样子,想想不该呀,几万条数据而已,第一反应是索引问题,mysql完全没问题不至于这么慢 ...

最新文章

  1. GridView,Repeater分页控件:WebPager(开源)
  2. 2021/6/20~22 每天学习python 30分钟 -了解python - python的运算符
  3. Java20-day11【实现多线程(进程、线程-调度-控制-生命周期)、线程同步(同步代码块、线程安全、Lock)、生产者消费者(模式概述、案例)】
  4. 快排算法的Java实现
  5. Some Essential JavaScript Questions And Answers(6)
  6. 递归遍历文件及子文件夹下的文件(该代码是复制过来修改过的,如果有侵作者权的话,请作者联系我,立即删除)...
  7. mysql 分表例子_mysql分表查询的简单例子
  8. python运维开发_python运维开发
  9. idea导入导出 settings 设置文件
  10. DMR对讲机的基本概念理解
  11. python地理数据处理 下载_Python批量下载地理空间数据云数据!Python无所不能!...
  12. html与css知识点集合
  13. 如何管理计算机回收站,回收站功能多多 教你如何玩转回收站
  14. VS修改MFC工程的程序图标
  15. python无限循环怎么停止,如何在Python中安全地停止无限循环?
  16. 用c++从头开始实现决策树
  17. 交叉熵、KL散度、Jeffery分歧、JS散度
  18. Java Day24
  19. 软考高级-系统架构师-软件架构设计
  20. PHP应用-一揽子解决方案

热门文章

  1. WIN8 下IE突然无法打开(管理员权限可打开)
  2. 编译安装squid3.1--亲测
  3. “八戒”马德华自传《悟能》首发《西游记》师徒五人再聚首
  4. 无需共享存储发布高性能的虚拟桌面
  5. 阿里再减持陌陌股份 持股比例从20.2%降至14%
  6. poj1068Parencodings
  7. 万能转换器boost::lexical_cast
  8. 软件使用方法_视频录制软件进行电脑屏幕录像的使用方法
  9. 消防信号总线原理_消防设施操作员关键技能之八:能通过总线式消防联动控制器启动警报等装置...
  10. php应用处理数据 504,PHP与504服务器错误