zoukankan      html  css  js  c++  java
  • 索引优化

    不需要建索引的三种情况:

      1.表记录太少

      2.经常需要增删改查的表

      3.数据重复过多且分布平均的字段,建了效果不明显

    JOIN语句优化

      左右连接相反加索引

      尽量减少join的循环总次数,永远用小的结果集去驱动大的结果集

      保证join字段都已经建好索引

      在无法保证join字段都建好索引的情况下且内存资源充足的情况下,不用太吝啬join buffer的设置

     

    避免索引失效

      1.全值匹配

      2.最佳左前缀法则

      3.不在索引上做任何操作(计算,函数,类型转换),否则索引失效

      4.存储引擎不能使用索引中范围条件右边的列,当复合索引出现模糊查询时,当前字段右边的索引将失效(除like'a%'外,因为a为定值)

      5.尽量使用覆盖索引,减少select *

      6.mysql在使用!=或者<>的时候无法使用索引

      7.is null , is not null 也无法使用索引

      8.like时以通配符%开头时,后面索引失效,级别为range,用覆盖索引则不会失效,但只能用到部分

      9.字符串不加单引号索引失效

      10.少用or,索引会失效

     

    ORDER BY

      复合索引的顺序和ORDER BY不一样时,出现filesort

     GROUP BY

      与ORDER BY 一致

      WHERE 高于 Having, 能用WHERE 尽量不用 HAVNG

  • 相关阅读:
    Saltstack cmd.run 多项命令
    salt state.sls windows 传输文件
    mysql 时区更改;5.7 弱口令
    nginx 端口转发
    nohup 后台执行
    检测 nginx 关闭切换keepalived
    Centos 7 安装 dotnet 环境
    unison 双向镜像同步
    samba 配置参数详解
    数据结构与算法面试题80道(15)
  • 原文地址:https://www.cnblogs.com/ldy233/p/11694988.html
Copyright © 2011-2022 走看看