四種隔離級別:
-
READ-UNCOMMITTED(讀取未提交): 最低的隔離級別,允許讀取尚未提交的資料變更,** 可能會導致臟讀、幻讀或不可重復讀** ,
-
READ-COMMITTED(讀取已提交): 允許讀取并發事務已經提交的資料, 可以阻止臟讀,但是幻讀或不可重復讀仍有可能發生 ,
-
REPEATABLE-READ(可重復讀): 對同一欄位的多次讀取結果都是一致的,除非資料是被本身事務自己所修改, 可以阻止臟讀和不可重復讀,但幻讀仍有可能發生 ,
-
SERIALIZABLE(可串行化): 最高的隔離級別,完全服從ACID的隔離級別,所有的事務依次逐個執行,這樣事務之間就完全不可能產生干擾,也就是說,該級別可以防止臟讀、不可重復讀以及幻讀

-
1、 臟讀:A,B兩事務,A事務會讀取到B事務未提交的資料,然后B因為某些原因回滾資料,所以A就讀取了B沒有提交的資料,也稱臟資料,
-
2、 不可重復讀:在A事務中對同一資料兩次查詢不一致,可能原因是在A事務提交之前B事務對該資料進行了操作
-
3、 幻讀:當某個事務在讀取某個范圍內的記錄時,另外一個事務又在該范圍內插入了新的記錄,當之前的事務再次讀取該范圍的記錄時,會產生幻行,就像產生幻覺一樣,這就是發生了幻讀,
-
不可重復讀和臟讀的區別 是,臟讀是某一事務讀取了另一個事務未提交的臟資料,而不可重復讀則是讀取了前一事務提交的資料,
-
幻讀和不可重復讀都是讀取了另一條已經提交的事務,不同的是不可重復讀的重點是修改,幻讀的重點在于新增或者洗掉,
-
事務隔離就是為了解決上面提到的臟讀、不可重復讀、幻讀這幾個問題,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/460819.html
標籤:其他
上一篇:最佳實踐 | 疫情之下,了解 eolink 如何助力遠程辦公!
下一篇:muduo專案介紹
