码迷,mamicode.com
首页 > 其他好文 > 详细

主键索引小结

时间:2017-09-14 00:35:10      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:动态   表空间   主键   包含   修改时间戳   innodb   sql优化   自增   时间戳   

InnoDB主键特点
1.索引定义时,若不显示包含主键,会隐式加入主键值。
2.索引定义时,若显示包含主键,会加入主键值。
3.在5.6.8以后,优化器已能自动识别索引末尾的主键值(Index Extensions),在这之前则需要显式加上主键列才可以被识别
 
案例:某InnoDB表,没有自增列主键,使用一段时间后,产生碎片,重整表空间后,从13G变成了9G。
 
主键选择建议:
1.对业务透明,无意义,免受业务变化影响。
2.主键要很少修改和删除。
3.主键最好是自增的。
4.不要具有动态属性,例如最后修改时间戳。
 
参考
[MySQL FAQ]系列 — 为什么InnoDB表要建议用自增列做主键
[MySQL优化案例]系列 -- InnoDB主键设计

主键索引小结

标签:动态   表空间   主键   包含   修改时间戳   innodb   sql优化   自增   时间戳   

原文地址:http://www.cnblogs.com/liang545621/p/7518319.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!