kidys 发表于 2018-10-5 10:47:20

mysql使用规范-索引规范

  (1)单张表中索引数量不超过5个。
  (2)单个索引中的字段数不超过5个。
  (3)索引名必须全部使用小写。
  (4)非唯一索引按照“idx_字段名称”进用行命名。例如idx_age_name。
  (5)唯一索引按照“uniq_字段名称”进用行命名。例如uniq_age_name。
  (6)组合索引建议包含所有字段名,过长的字段名可以采用缩写形式。例如idx_age_name_add。
  (7)表必须有主键,推荐使用UNSIGNED自增列作为主键。
  (8)唯一键由3个以下字段组成,并且字段都是(整)(形)(时),可使用唯一键作为主键。其他情况下,建议使用自增列或发号器作主键。
  (9)禁止冗余索引。
  (10)禁止重复索引。
  (11)禁止使用外键。
  (12)联表查询时,JOIN列的数据类型必须相同,并且要建立索引。
  (13)不在低基数列上建立索引,例如“性别”。
  (14)选择区分度大的列建立索引。组合索引中,区分度大的字段放在最前。
  (15)对字符串使用前缀索引,前缀索引长度不超过8个字符。
  (16)不对过长的VARCHAR字段建立索引。建议优先考虑前缀索引,或添加CRC32或MD5伪列并建立索引。
  (17)合理创建联合索引,(a,b,c) 相当于 (a) 、(a,b) 、(a,b,c)。
  (18)合理使用覆盖索引减少IO,避免排序。

页: [1]
查看完整版本: mysql使用规范-索引规范