mysql索引创建时的12条建议

165 阅读1分钟
  • 建议索引中的字段数量不要超过5个
  • 单张表索引数量控制在5个以内
  • 唯一索引和主键不要重复
  • 索引字段的顺序需要考虑字段唯一值的个数,个数越多越好,越要放在前面
  • order by、group by 、distinct字段要放在复合索引的后边,也就是说,符合索引前面是用于等值查询,后边用于排序操作
  • 使用explain判断sql是否正确使用索引,尽量避免extra列出现using file sort,using temporary
  • update 、delete语句要根据where条件添加索引
  • 不建议使用like ‘%%’形式
  • 对长度过长varchar字段建立索引时,需要增加散列字段,对varchar使用散列算法时,散列后的字段最好是整形,然后对该字段建立索引。
  • 存储域名地址时,可以考虑反向存储的方法,比如把baidu.com 存储为 com.baidu,方便在其上面构建索引和进行统计
  • 合理的创建复合索引和覆盖索引,平衡效率和空间
  • 把范围条件放到索引后边,精确命中的放在索引前面