表索引为什么使用主键+整型+自增
- 主键不用多说,查询效率问题
整型+自增
- 现在的MySQL是InnoDB的数据引擎,底层是B+树
- InnoDB必须有主键,因为
整个B+树都是靠这索引来维护
的,没有索引整个表就建不起来 - 当然我们不主动加主键索引,InnoDB也会默认自己加上的
- 让InnoDB自己加主键就会更加影响效率,要么它选择一个字段做索引,要么多加一个字段做索引
- 它放在都要一个那我们为什么不自己定,这样也还会有上面其他效率问题
- B+树底层也是用
二分法来对树进行一层一层的查找
的 - 那么索引使用整型方式,肯定会比使用uuid好,因为二分法比较大小i
nt肯定比String比较要效率搞
- 而且uuid所要的内存也会比int的要大
- B+树底层会维护索引的顺序,我们按照123456的顺序自增那么索引最后都只是在最后面添加
- 如果我们不按照自增的方式,索引突然从
中间插入
,会改变已经完成的索引顺序
又要重新调整移动索引结构
所以创建表的时候,请使用主键+整型+自增