資料庫之事務的隔離級別

2021-10-04 06:37:44 字數 544 閱讀 3519

iso 和 anis sql 標準制定了四種事務隔離級別,而 innodb 遵循了 sql:1992 標準中的四種隔離級別

read uncommited: 使用查詢語句不會加鎖,可能會讀到未提交的行(dirty read)

read commited: 只對記錄加記錄鎖,而不會再記錄之間加間隙鎖,所以允許新的記錄插入到被鎖定的附近,所以再多次使用查詢語句時,可能得到不同的結果(non-repeatable read);

repeatable read : 多次讀取同一範圍的資料會返回第一次查詢的快照,不會返回不同的資料行,但是可能發生幻讀(phantom read);

serializable:innodb隱式地將全部的查詢語句加上了共享鎖,解決了幻讀的問題;

髒讀:在乙個事務中,讀取了其他事務未提交的資料。

不可重複讀:在乙個事務中,同一行記錄被訪問了兩次卻得到了不同的結果。

幻讀:在乙個事務中,用乙個範圍內的記錄被讀取時,其他事務向這個範圍新增了新的記錄。

資料庫學習之事務隔離級別

主要內容 一致性讀 當前讀 在讀提交隔離級別之下 事務a k 2 事務b k 3 大白話 原理 在可重複讀隔離級別之下,查詢操作所遵循的是一致性試圖中給出的資料,更新操作所遵循的是當前讀中所給出的資料。mvcc 多版本併發控制。在我的理解裡面,就是回滾操作 transaction id 在innod...

資料庫之事務隔離級別簡析

資料庫之事務隔離級別簡析 在分布式的系統中,通常會有多個執行緒連線到資料庫中同時對乙個表進行操作 這裡的同時並不表示同乙個時間點,而是同時競爭cpu的資源,至於如何排程,就要看執行緒和作業系統如何進行排程了 這種情況下如果會話的事物設定不當,就會導致資料混亂,常常會出現以下三種情況 假設現在系統中有...

理解資料庫之事務與其隔離級別

一 事務的四大特性 原子性原子性是指事務包含的操作要麼全部成功,要麼全部失敗回滾。一致性一致性是指事務必須使資料庫從乙個一致性狀態變換為另乙個一致性狀態,也就是說事務執行之前和執行之後都必須處於一致性狀態。以a b兩個使用者轉賬為例,無論如何轉賬,兩個使用者的總金額和是不變的。隔離性隔離性是指當多個...