02索引设计规范
发布日期:2021-07-01 02:23:11 浏览次数:2 分类:技术文章

本文共 504 字,大约阅读时间需要 1 分钟。

限制每张表上的索引数量,建议单张表索引不超过5个

索引并不是越多越好!索引可以提高效率同样可以降低效率
禁止给表中的每一列都建立单独的索引
 

Innodb是按照哪个索引的顺序来组织表的呢?

答案是:主键
 

每个Innodb表必须有一个主键

不使用更新频繁的列作为主键,不使用多列主键
不使用UUID , MD5 , HASH,字符串列作为主键
主键建议选择使用自增ID值
 

常见索引列建议

SELECT、UPDATE、 DELETE语句的WHERE从句中的列
包含在ORDER BY、GROUP BY、DISTINCT中的字段
多表JOIN的关联列
 

如何选择索引列的顺序

区分度最高的列放在联合索引的最左侧
尽量把字段长度小的列放在联合索引的最左侧
使用最频繁的列放到联合索引的左侧

对于频繁的查询优先考虑使用覆盖索引

覆盖索引:就是包含了所有查询字段的索引
避免Innodb表进行索引的=次查找
可以把随机IO变为顺序I0加快查询效率
 

尽量避免使用外键

不建议使用外键约束,但- -定在表与表之间的关联键上建立索引
外键可用3 F保证数据的参照完整性,但建议在业务端实现
外键会影响父表和子表的写操作从而降低性能
 

 

 

 

 

 

 

 

 

 

转载地址:https://mapengsen.blog.csdn.net/article/details/108803977 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:03数据库设计规范
下一篇:01数据库基本设计规范

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年04月22日 20时24分07秒