mysql的innodb存储引擎下,主键默认是按照自增的顺序排的吗
mysql的innodb存储引擎下,主键默认是按照自增的顺序排的吗?
默认楼主使用的是InnoDB存储引擎尽量使用业务无关的自增列作为主键,主要原因:
1. InnoDB数据是按照主键聚簇的,数据在物理上按照主键大小顺序存储,使用其他列或者组合无法保证顺序插入,随机IO(SSD的话影响不大)导致插入性能下降2.所有二级索引都存储了主键的,采用二级索引查询,首先找到的主键,然后通过主键定位数据,如果直接使用组合字段作为主键,会导致二级索引占用空间较大,bufferpool中存储的记录数较少,影响性能,而自增列只占4或者8个字节,代价非常小