MySQL的四種事務隔離級別

2021-09-10 17:16:43 字數 875 閱讀 9927

注:

事務名稱

a事務b事務

讀未提交

修改未提交事務

生效不可重複讀

修改提交事務

生效可重複讀

修改提交事務

未生效序列化

b有查詢則a不能修改

------

事務的基本要素(acid)----- 原子性、一致性、隔離性、永續性

事務的併發問題 ----- 髒讀、不可重複讀、幻讀

事務隔離級別 -----讀未提交(read-uncommitted)、不可重複讀(read-committed)、可重複讀(repeatable-read)、序列化(serializable)

--檢視當前回話事務級別

select @@tx_isolation

--設定當前回話事務級別

setsession

transaction

isolation

level

serializable

--開始事務

start

transaction

--提交事務

commit

--回滾事務

rollback

不可重複讀的和幻讀很容易混淆,不可重複讀側重於修改,幻讀側重於新增或刪除。解決不可重複讀的問題只需鎖住滿足條件的行,解決幻讀需要鎖表

可重複讀的隔離級別下使用了mvcc機制,select操作不會更新版本號,是快照讀(歷史版本);insert、update和delete會更新版本號,是當前讀(當前版本)。

不同事務對錶和行的影響

隔離級別越高,越能保證資料的完整性和一致性,但是對併發效能的影響也越大

MySQL 四種事務隔離級別

mysql 事務都是指在 innodb 引擎下,myisam 引擎不支援事務。顯而易見,能夠讀取到,其他事務未提交的資料。既然其他事務未提交,就代表資料可能會回滾,這也意味著,可能讀取到的資料根本就不存在。特點 能讀取其它事務未提交的資料。存在事務問題 髒讀,不可重複讀,幻讀 這個隔離級別,只能讀取...

MySQL的四種事務隔離級別

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

mysql的四種事務隔離級別

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