innodb对update的处理

当更新非聚集索引上记录 和 聚集索引上的主键时,是标记删除,然后插入新的记录

当更新聚集索引上的非主键列时,是updated-in-place,也就是说原地修改,不会插入新记录。

之前一直以为都是以标记删除作处理的,翻了下代码。找到两个函数:

btr_cur_del_mark_set_sec_rec   对非聚集索引上的记录进行标记删除

btr_cur_del_mark_set_clust_rec 对聚集索引上的记录进行标记删除

你可能感兴趣的:(InnoDB)