mysql索引原则

梦想的初衷 提交于 2020-04-06 03:54:41
  1. 设计原则
  1. 经常被用户条件查询的字段,创建索引
  2. 索引不是越多越好;索引占用磁盘空间,影响insert、update、delete性能
  3. 经常修改的表,不要建过多的索引;更新表数据时,索引也会进行微调或者更新,十分消耗系统资源
  4. 数据量小的表,不需要建索引;数据量小时查询本来就很快,但是建索引会对于索引结构的维护带来系统资源消耗
  5. boolean值字段不需要建索引;比如deteleTag字段,只有0或者1的情况
  6. 唯一性字段建议建唯一索引;查询速度有明显提高
  7. 当排序是固定多个列时,在这些列上建组合索引
  1. 优化原则
  1. 避免使用 select *
  2. 范围查询索引失效。( > 、< 、between...and... 、<> 、!= 、like )
  3. is null 、is not null 、or 索引失效
  4. 使用函数、计算等操作索引失效
  5. 组合索引最左原则。(建索引顺序与查询顺序要一致)
  6. 连接查询表之间的字符集与校对集要一致。( utf8 、utf8_bin)
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!