zoukankan      html  css  js  c++  java
  • mysql 查询优化 ~ 查询参数调节

    mysql优化基础之参数调节
    一 简介:我们谈谈如何调节mysql参数加速查询
    二 相关参数
       1 排序参数
         sort_buffer_size 当出现order by时会利用到这个参数,当数据量超过内存参数时,会利用磁盘的临时文件进行外部排序.
         知识点补充:
         1 联合索引的建立是按照最左原则,即首先按照第一列的值建立,当第一列的值相同是,才会进行第二列的排序,依次类推.
         2 mysql8.0的跳跃索引可以按照党第一列值相同时,将第二列进行反转排序存储,所以能实现反向排序
         3 普通的全表select order by并不会进行排序,而只是根据联合索引顺序检索
       2 临时表参数
         tmp_table_size 当出现以下情况时可能会用到(1 select子查询 2 join 多表 3 uniob all 4 group by),当数据量超过内存参数时,会用到磁盘的临时文件进行存储操作
         知识点补充
         1 explain下出现using tempoary时代表用到了临时内存,但是并不一定代表用到了临时文件,这点要注意
         2 using tempoary 通常伴随着 using filesort
      3 联表参数
         join_buffer_size 通常使用出现在 BNL优化时,第一张表将数据分批存入join_buffer中 然后与第二张表关联
         知识点补充
        1 通过explain join是ALL,index,rang或者Index_merge的时候会用到join_buffer
    三 参数推荐设置
      join_buffer_size 2M-4M
      sort_buffer_size 2M
     tmp_table_size 16-256M
    四 特别注意
      1 本文所提到的变量都是session独享的,所以如果一旦并发量增大,线程所占用的内存会增加.这些内存是不在bp里控制的
      2 根据不同的select利用到的变量进行调节,有时候能加速你的查询效率

  • 相关阅读:
    JDBC中DAO+service设计思想
    Ajax的简单基础
    Ajax的简单基础
    Jquery选择器总结二
    Jquery选择器总结二
    Jquery选择器总结一
    Jquery选择器总结一
    amazon的新算法《大数据时代:亚马逊“预判发货”,顾客未动包裹先行》
    wget命令检测端口是否监听
    KUNG FU PANDA
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/10843068.html
Copyright © 2011-2022 走看看