共計 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 內部的操作就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
正文完