【Mysql】髒讀、不可重複讀、幻讀
阿新 • • 發佈:2021-01-02
髒讀(未提交的update事務影響【事務一】前後讀取的資料)
事務一和事務二併發執行:
1)事務一第一次查詢資料
2)事務二修改資料【未提交】
3)事務一再次讀的時候發現是修改後的資料
4)結論:導致髒讀
不可重複讀(已提交update/delete事務影響【事務一】前後讀取的資料):
事務一和事務二併發執行:
1)事務一第一次查詢資料
2)事務二修改資料【已經提交】
3)事務一再次讀的時候發現是修改後的資料
4)結論:不可重複讀
幻讀(已提交insert事務影響【事務一】前後讀取的資料):
1)事務一第一次統計資料 count=3
2)事務二提交insert資料【已經提交
3)事務一再次統計的時候發現是count=4
4)結論:幻讀,前後多次讀取,資料總量不一致
總結:髒讀、不可重複讀、幻讀,就是事務一在多次讀取或者統計資料的時候,受其它事務的干擾①髒讀:受未提交update事務的影響②受已提交update事務的干擾③受已提交insert語句的影響