[Mysql]兩階段提交

Duancf發表於2024-08-19
  • 第一階段:寫入redolog檔案,並把redolog的提交狀態設定為prepare狀態
  • 第二階段:寫入binlog檔案,完成之後,把redolog的提交狀態設定為commit

為什麼兩階段提交能保證一致性

如果第一階段寫redolog的時候崩潰,什麼都沒寫入,這個事務就丟失了

如果第二階段寫入binlog的時候崩潰,回滾之前的redolog日誌,取消這個事務的操作

如果第二階段redolog commit的時候崩潰,但是binlog已經寫入了,那就再設定一下redolog commit即可

相關文章