1. 程式人生 > 資料庫 >【Mysql】髒讀、不可重複讀、幻讀

【Mysql】髒讀、不可重複讀、幻讀

髒讀(未提交的update事務影響【事務一】前後讀取的資料)

 

  事務一和事務二併發執行:

1)事務一第一次查詢資料

2)事務二修改資料【未提交

3)事務一再次讀的時候發現是修改後的資料

4)結論:導致髒讀

 

 不可重複讀(已提交update/delete事務影響【事務一】前後讀取的資料):

 

 事務一和事務二併發執行:

1)事務一第一次查詢資料

2)事務二修改資料【已經提交

3)事務一再次讀的時候發現是修改後的資料

4)結論:不可重複讀

 

幻讀(已提交insert事務影響【事務一】前後讀取的資料):

 

1)事務一第一次統計資料 count=3

2)事務二提交insert資料【已經提交

3)事務一再次統計的時候發現是count=4

4)結論:幻讀,前後多次讀取,資料總量不一致

 

 總結:髒讀、不可重複讀、幻讀,就是事務一在多次讀取或者統計資料的時候,受其它事務的干擾①髒讀:受未提交update事務的影響②受已提交update事務的干擾③受已提交insert語句的影響