索引规范
 
                  更新时间 2025-06-17 11:00:33
                 
 
                    最近更新时间: 2025-06-17 11:00:33
                  
 本文为您介绍索引规范。
 - 禁止修改聚集索引或主键 - 为了维持B+tree带来大量的数据移动,一般要求使用跟业务不相关的id来作为整形自增主键 
 
- 尽量合并索引 - 索引加快了查询度,但是却会影响写入性能。 
- 一个表的索引应该结合这个表相关的所有SQL综合创建,尽量合并。 
- 组合索引的原则是:过滤性越好的字段越靠前,例如 - key (a)和- key(a,b)存在,则可以直接删除- key(a),对于- select ……from tb where a=123;,则可以使用索引- (a,b)。
 
- 禁止给选择性低的字段建单列索引 - MySQL对索引的过滤性存在要求,如果过滤性太低,则MySQL会被放弃使用。 
 
- 禁止使用外键约束 - 对性能损耗特别大。 
- 让应用程序去维护约束。 
 
- 字符类型字段应尽量使用前缀索引 - 太长的索引不仅影响写入性能,而且使用效果较差,因此字符串类型字段一般只建前缀索引,例如 - alter table test_long_str add index idx_str(str(16));。
 
- 合理使用复合索引 - 一般情况下,复合索引比普通索引更加适用,因此,有些索引可以修改成复合索引。 
 
- 针对LIKE查询的索引问题,应注意使用前缀索引 - LIKE只能使用前缀索引,示例说明如下: - col like “abc%”可以用索引
- col like “%abc%”不可以用索引
- col like“%abc”不可以用索引
 
 
