Mysql學習:一條SQL插入語句是如何執行的?

待執行語句:

insert into t(id,k) values(id1,k1),(id2,k2); 

假設k是索引,k1所在的數據頁(page1)在內存(InnoDB bufferpool)中, k2所在的數據頁(page2)不在內存中。

執行流程:

  • 1.Page1在內存中,直接更新內存
  • 2.Page2不在內存中,就在內存的change buffer區域, 記錄下“我要往Page 2插入一行”這個信息
  • 3.將上述兩個動作記入redo log中

在這裏插入圖片描述

內容來源:mysql45講

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章