mysql主键自增为啥会出现页分页的情况吗?
2 个回答
自己喜欢的东西,就不要问别人好不好。赵云### 1. **页满触发尾部分裂(Right Split)** * **单线程顺序插入**也会触发; * 触发点:**当前页空间不足,插入新记录失败**; * 处理方式:**将部分记录迁出建新页,继续插入**; * 是 **正常且必要** 的页分裂行为。 ### 2. **并发插入竞争最后一页** * 多线程并发插入同一页; * 每个线程都判断“当前页已满”,**几乎同时触发分裂**; * 导致短时间内**多次分裂**、页结构混乱; * 是一种 **资源竞争导致的“过度分裂”**,带性能开销。 ### 总结一句话: > 页满触发是**正常分裂**,并发竞争导致的是**重复/过度分裂**,前者不可避免,后者需优化(如 `innodb_autoinc_lock_mode=2`)。编辑于 2025-08-01 02:57 •IP属地 北京举报评论收藏
天道忌满,人道忌全。 水满则溢, 物极必反。蓝银皇会,原因如下: 1. **页满触发尾部分裂(Right Split)**:主键自增虽然是顺序插入,但页有大小限制,满了就要分页。 2. **并发插入竞争最后一页**:多个线程同时插入尾页,判断页已满,触发多次分页。 3. **自增值回退或显式指定主键值**:插入点落在中间,触发中间页分裂(Mid Split)。 结论:**主键自增也会页分页,常因页满+并发+插入点错位。**发布于 2025-06-01 22:34 •IP属地 吉林举报评论收藏
公众号进入网站体验更佳

