共计 421 个字符,预计需要花费 2 分钟才能阅读完成。
这篇文章给大家介绍如何进行 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 内部的操作就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
正文完