首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >为什么你的数据库写入越来越慢?可能是复合主键惹的祸

为什么你的数据库写入越来越慢?可能是复合主键惹的祸

作者头像
这个DBA有点耶
发布2026-09-20 15:49:19
发布2026-09-20 15:49:19
780
举报
概述
选主键时,很多人会在“自增ID”和“业务复合主键”之间犹豫。复合主键看起来更“自然”——订单明细用(订单ID,商品ID),用户角色用(用户ID,角色ID)。但在InnoDB的索引组织表结构下,复合主键会带来索引膨胀、二级索引体积暴涨、写入性能下降等隐藏代价。本文从InnoDB的存储结构出发,拆解复合主键和自增主键的物理差异,给出可量化的选型依据。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 一、先把概念理清楚
  • 二、复合主键的隐藏代价
  • 三、实测数据对比
  • 四、什么场景下复合主键反而更合适?
  • 五、怎么选?决策框架
  • 六、小结
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档