事務隔離級別isolation設定

2021-10-03 16:59:14 字數 854 閱讀 6318

乙個事務讀取到另乙個事務中未提交的資料,另乙個事務中資料可能進行了改變,此時a事務讀取的資料可能和資料庫中資料時不一致的,此時認為資料是髒資料,讀取髒資料的過程就叫做髒讀。

1.主要針對的是某行資料

2.主要針對的操作是修改操作

3.兩次讀取在同乙個事務內

當事務a第一次讀取事務後,事務b對事務a讀取的淑君

進行修改,事務 a 中再次讀取的資料和之前讀取的資料不一致,過

程不可重複讀.

1.主要針對的操作是新增或刪除

2.兩次事務的結果.

3.事務a按照特定條件查詢出結果,事務b新增了一條符合

條件的資料.事務 a 中查詢的資料和資料庫中的資料不一致的,事

務 a 好像出現了幻覺,這種情況稱為幻讀.

default: 預設值,由底層資料庫自動判斷應該使用什麼隔離界別

read_uncommitted: 可以讀取未提交資料,可能出現髒讀,不

重複讀,幻讀.(效率最高)

read_committed:只能讀取其他事務已提交資料.可以防止髒

讀,可能出現不可重複讀和幻讀.

repeatable_read: 讀取的資料被新增鎖,防止其他事務修改

此資料,可以防止不可重複讀.髒讀,可能出現幻讀.

serializable: 排隊操作,對整個表新增鎖.乙個事務在運算元

據時,另乙個事務等待事務操作完成後才能操作這個表.(最安全,效率低)

mysql事務 事務隔離isolation

總結事務是要保證一組資料庫操作,要麼全部執行成功,要麼都不執行。mysql支援多引擎,但是並不是所有引擎都支援事務,mysql中只有使用了innodb資料庫引擎才支援事務。事務的特性 acid atomicity原子性,consistency一致性,isolation隔離性,durability永續...

spring事務的isolation(隔離級別)

spring框架的 事務有4種隔離級別 隔離級別 名稱含義 髒讀不可重複讀 幻讀讀未提交 isolation read uncommitted t1讀取t2未提交的東西vv v讀已提交 isolation read committed mysql預設,事務提交後可讀xv v可重複讀 isolatio...

事務隔離級別

1 serializable 最嚴格的spring事務隔離級別,事務序列執行,資源消耗最大 3 read committed 大多數主流資料庫的預設spring事務隔離等級,保證了乙個事務不會讀到另乙個並行事務已修改但未提交的資料,避免了 髒讀取 該級別適用於大多數系統。4 read uncommi...