4種事務特性,5種隔離級別,7種傳播行為

2021-10-06 19:13:31 字數 935 閱讀 1003

事務特性(4種): 

原子性 (atomicity):強調事務的不可分割. 

一致性 (consistency):事務的執行的前後資料的完整性保持一致. 

隔離性 (isolation):乙個事務執行的過程中,不應該受到其他事務的干擾 

永續性(durability) :事務一旦結束,資料就持久到資料庫

事務的隔離級別:

default 這是乙個platfromtransactionmanager預設的隔離級別,使用資料庫預設的事務隔離級別. 

未提交讀(read uncommited) :髒讀,不可重複讀,虛讀都有可能發生 

已提交讀 (read commited):避免髒讀。但是不可重複讀和虛讀有可能發生 

可重複讀 (repeatable read) :避免髒讀和不可重複讀.但是虛讀有可能發生. 

序列化的 (serializable) :避免以上所有讀問題. 

常見資料庫的預設隔離級別:

mysql 預設:可重複讀 

oracle 預設:讀已提交

事務的傳播行為 

同乙個事務中 

propagation_required 支援當前事務,如果不存在 就新建乙個(預設) 

propagation_supports 支援當前事務,如果不存在,就不使用事務 

propagation_mandatory 支援當前事務,如果不存在,丟擲異常 

沒有在同乙個事務中 

propagation_requires_new 如果有事務存在,掛起當前事務,建立乙個新的事務 

propagation_not_supported 以非事務方式執行,如果有事務存在,掛起當前事務 

propagation_never 以非事務方式執行,如果有事務存在,丟擲異常 

propagation_nested 如果當前事務存在,則巢狀事務執行

MYSQL資料庫事務4種隔離級別及7種傳播行為

原子性 事務的不可分割,組成事務的各個邏輯單元不可分割。一致性 事務執行的前後,資料完整性保持一致。隔離性 事務執行不應該受到其他事務的干擾。永續性 事務一旦結束,資料就持久化到資料庫中。檢視 select tx isolation 設定 set tx isolation 如果不考慮隔離性,引發一些...

spring事務 5種隔離級別和7種傳播行為

事務的隔離性就是指,多個併發的事務同時訪問乙個資料庫時,乙個事務不應該被另乙個事務所干擾,每個併發的事務之間要相互進行隔離。在實際開發過程中,我們絕大部分的事務都是有併發情況。多個事務併發執行,經常會操作相同的資料來完成各自的任務。在這種情況下可能會導致以下的問題 隔離級別定義了乙個事務可能受其他併...

MySQL事務的4種特性以及事務隔離級別

事務的基本特性 1 原子性 atomicity 事務開始後所有操作,要麼全部做完,要麼全部不做,不可能停滯在中間環節。事務執行過程中出錯,會回滾到事務開始前的狀態,所有的操作就像沒有發生一樣。也就是說事務是乙個不可分割的整體,就像化學中學過的原子,是物質構成的基本單位。2 一致性 consisten...