RSS
菜单

MySQL InnoDB 的 Change Buffer 是什么?

Change Buffer(5.5 前叫插入缓冲 Insert Buffer):缓存对二级索引页的 DML 修改(插入/更新/删除)——当目标二级索引页不在 Buffer Pool 时,不立即读入并修改,而是记录变更(内存或磁盘),等页被读到或后台 merge 时批量应用。收益:① 减少随机 IO(不立即读索引页);② 写放大降低,批量合并。代价:异常崩溃恢复更复杂、change buffer 占内存(innodb_change_buffer_max_size,默认 25% Buffer Pool)。适用:写多读少、二级索引多、非唯一索引场景(唯一索引需立即检查冲突,不用 CB)。

下载推广海报

圈内讨论推广海报

《MySQL InnoDB 的 Change Buffer 是什么?》完整推广海报
一起交流

全部回复 0

分享经验,让问题更进一步

讨论,从你的观点开始

还没有回复,欢迎补充经验或分享不同的思路。