changebuffer
有什么作用
用于减少非唯一索引修改的IO次数(磁盘->内存->磁盘),记录变更操作然后等下一次磁盘->内存中再顺便修改索引值
为什么只记录非唯一索引
因为唯一索引要求实时性,保证唯一约束
changebuffer中记录的是什么
记录的是非唯一索引的变更操作
什么时候合并数据
等对应的索引加载到bufferpool中时
什么时候将变更后的脏页刷盘
innodb决定,当bufferpool中的空间不足时会触发脏页的刷新
用于减少非唯一索引修改的IO次数(磁盘->内存->磁盘),记录变更操作然后等下一次磁盘->内存中再顺便修改索引值
因为唯一索引要求实时性,保证唯一约束
记录的是非唯一索引的变更操作
等对应的索引加载到bufferpool中时
innodb决定,当bufferpool中的空间不足时会触发脏页的刷新