- 设计原则
- 经常被用户条件查询的字段,创建索引
- 索引不是越多越好;索引占用磁盘空间,影响insert、update、delete性能
- 经常修改的表,不要建过多的索引;更新表数据时,索引也会进行微调或者更新,十分消耗系统资源
- 数据量小的表,不需要建索引;数据量小时查询本来就很快,但是建索引会对于索引结构的维护带来系统资源消耗
- boolean值字段不需要建索引;比如deteleTag字段,只有0或者1的情况
- 唯一性字段建议建唯一索引;查询速度有明显提高
- 当排序是固定多个列时,在这些列上建组合索引
- 优化原则
- 避免使用 select *
- 范围查询索引失效。( > 、< 、between...and... 、<> 、!= 、like )
- is null 、is not null 、or 索引失效
- 使用函数、计算等操作索引失效
- 组合索引最左原则。(建索引顺序与查询顺序要一致)
- 连接查询表之间的字符集与校对集要一致。( utf8 、utf8_bin)
来源:oschina
链接:https://my.oschina.net/u/4198095/blog/3217536