- Read Uncommitted(讀未提交):
- 這是最低的事務隔離級別。
- 一個事務可以讀取另一個尚未提交的事務的修改。
- 可能出現的問題包括髒讀、不可重複讀和幻讀。
- 由於它允許讀取未提交的資料,所以效能上可能稍好一些,但資料一致性風險也最高。
- Read Committed(讀已提交):
- 大多數資料庫系統的預設隔離級別(但不是MySQL的預設級別)。
- 一個事務只能讀取已經提交的事務的修改。
- 避免了髒讀,但可能出現不可重複讀和幻讀。
- 在這個級別下,一個事務內對同一資料的多次讀取可能返回不同的結果,因為其他事務可能在此期間修改了資料並提交。
- Repeatable Read(可重複讀):
- 這是MySQL,MongoDB的預設隔離級別。
- 在同一事務內的多次讀取會看到相同的資料行,即使其他事務在此期間修改了這些行並提交。
- 避免了髒讀和不可重複讀,但可能出現幻讀(即一個事務讀取了幾行資料,另一個併發事務插入新行,然後第一個事務再次讀取同樣的範圍時,看到了這些新行)。
- 通常,這個級別透過多版本併發控制(MVCC)來實現。
- Serializable(序列化):
- 這是最高的隔離級別。
- 它透過強制事務序列執行,而不是併發執行,來避免髒讀、不可重複讀和幻讀。
- 由於事務是序列執行的,因此效能通常最差。
- 在這個級別下,讀操作會加共享鎖,寫操作會加排它鎖,因此其他事務不能修改被讀取的資料。
事務級別有哪些?
相關文章
- MySQL事務隔離級別MySql
- 事務、特性、隔離級別
- MySQL 事務隔離級別MySql
- [Mysql]事務/隔離級別MySql
- PostgreSQL事務隔離級別SQL
- 什麼是事務、事務特性、事務隔離級別、spring事務傳播特性?Spring
- 資料庫事務與事務的隔離級別資料庫
- MySQL事務的隔離級別MySql
- 事務四種隔離級別
- 理解MySQL事務隔離級別MySql
- MySQL的事務隔離級別MySql
- 在Linux中,RAID級別有哪些?LinuxAI
- MySQL事務隔離級別和MVCCMySqlMVC
- 事務的四種隔離級別
- 事務ACID特性與隔離級別
- 理解mysql的事務隔離級別MySql
- 事務系統的隔離級別
- 啥是 MySQL 事務隔離級別?MySql
- mysql如何修改事務隔離級別MySql
- 事務的隔離級別與MVCCMVC
- mysql事務隔離級別和鎖MySql
- Mysql鎖與事務隔離級別MySql
- Mysql 四種事務隔離級別MySql
- 資料庫事務與隔離級別資料庫
- 事務隔離級別(圖文詳解)
- 事務基礎特性及隔離級別
- (轉)事務的四種隔離級別
- [20200512]oracle的事務隔離級別.txtOracle
- MySQL 的四種事務隔離級別MySql
- MySQL 事務隔離級別實現原理MySql
- CYmysql事務隔離級別詳情dbzMySql
- MySQL 事務的隔離級別初窺MySql
- SqlServer事務詳解(事務隔離性和隔離級別詳解)SQLServer
- MySql事務無法回滾的原因有哪些MySql
- MySQL的事務處理及隔離級別MySql
- 聊聊資料庫的事務隔離級別資料庫
- 徹底搞懂 MySQL 事務的隔離級別MySql
- Mysql事務隔離級別與鎖機制MySql