zoukankan      html  css  js  c++  java
  • Mysql-Explain参数详解(尚硅谷-周阳)

    系统在某些时刻存在响应缓慢,开启了慢查询,发现有许多查询缓慢的SQL,

    这里想着优化一下查询,奈何技术不扎实,花了些时间系统学习了下SQL调优基本分析,这里记录一下。参考B站周阳-https://www.bilibili.com/video/BV1KW411u7vy?p=46&t=8

    哪些情况下适合建立索引

     哪些情况不要创建索引

     Explain

       id:select查询的序列号,包含一组数字,表示查询中执行select子句或操作表的顺序  

       select_type:查询的类型,主要用于区别普通查询、联合查询、子查询等复杂查询    

        type:访问类型排列,显示查询使用了何种类型

    1. type显示的是访问类型,是较为重要的一个指标,结果值从最好到最坏依次是:system>const>eq_ref>ref>fultext>ref_or_null>index_merge>unique_subquery>index_subquery>range>index>ALL
    2. 挑重要的来说:system>const>eq_ref>ref>range>index>ALL,一般来说,得保证查询至少达到range级别,最好能达到ref。

      

     

     

       possible_keys 

      

    1. 显示可能应用在这张表中的索引,一个或多个
    2. 若查询涉及的字段上存在索引,则该索引将被列出,但不一定被查询实际使用

      key

      

    1. 实际使用的索引,如果为null,则没有使用索引

    2. 若查询中使用了覆盖索引,则该索引仅出现在key列表中

      ref

      

    1. 显示索引哪一列被使用了,如果可能的话,最好是一个常数。哪些列或常量被用于查找索引列上的值
    2. 由key_len可知t1表的索引idx_col1_col2被充分使用,t1表的col1匹配t2表的col1,t1表的col2匹配了一个常量,即’ac’

      rows

      根据表统计信息及索引选用情况,大致估算出找到所需的记录所需要读取的行数

      Extra:

      包含不适合在其他列中显示但十分重要的额外信息

      

     

     

     

      CSDN:oneby-wang

  • 相关阅读:
    vue-music 关于搜索历史本地存储
    Node.js中package.json中^和~的区别
    主流浏览器内核
    pm2 日常使用
    前端验证用户登陆状态(vue.js)
    ng-repeat循环出来的部分调用同一个函数并且实现每个模块之间不能相互干扰
    行内元素垂直方向位置调整的一些感悟和困惑
    由overflow-x:scroll产生的收获
    子代选择器(>)后代选择器(' ')的区别
    content相关属性
  • 原文地址:https://www.cnblogs.com/xyzxy/p/14328655.html
Copyright © 2011-2022 走看看