这篇文章给大家介绍如何进行MySQL update数据时InnoDB内部的操作,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
当MySQL更新数据时,InnoDB内部的操作流程大致是:
(1).将数据读入InnoDB buffer pool,并对相关记录加独占锁;
(2).将UNDO信息写入undo表空间的回滚段中;
(3).更改缓存页的数据,并将更新记录写入redo buffer中;
(4).提交时根据innodb_flush_log_at_trx_commit的设置,用不同的方式将redo buffer中的更新记录刷新到InnoDB redo log file中,然后释放独占锁;
(5).后台IO线程根据需要择机将缓存中更新过的数据刷新写入到磁盘文件中。
关于如何进行MySQL update数据时InnoDB内部的操作就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。