1. 程式人生 > >sqlserver的事務

sqlserver的事務

步驟 寫入 磁盤 提交 alt commit write 沒有 img

本文主要分享一下事務在sqlserver中的執行流程。

註意,這裏只談論流程,不涉及鎖的信息,關於鎖的信息,稍後會有專門的文章討論。

事務的執行流程如下,從01步到08步。

技術分享

1,sqlserver接受到事務請求

2,存儲引擎開始一個事務(具有唯一的事務標識),並且把事務日誌寫入緩存log buffer

3,存儲引擎把事務的數據寫入緩存db buffer

4,當步驟3完成以後,存儲引擎把緩存日誌時的事務標識commit

5,把log buffer中的日誌寫盤

6,日誌寫到磁盤完成以後,存儲引擎返回給客戶端事務提交成功(註意,此時數據並沒有真正的寫到磁盤上)。

7,等待觸發checkpoint或者lazy write

8,數據寫入磁盤

sqlserver的事務