事務隔離級別session
(1)READ-UNCOMMITTED 這是事務最低的隔離級別,它充許另一個事務能夠看到這個事務未提交的數據。 解決第一類丟失更新的問題,可是會出現髒讀、不可重複讀、第二類丟失更新的問題,幻讀 。事務
(2)READ-COMMITTED 保證一個事務修改的數據提交後才能被另一個事務讀取,即另一個事務不能讀取該事務未提交的數據。 解決第一類丟失更新和髒讀的問題,但會出現不可重複讀、第二類丟失更新的問題,幻讀問題io
(3)REPEATABLE-READ 保證一個事務相同條件下先後兩次獲取的數據是一致的 解決第一類丟失更新,髒讀、不可重複讀、第二類丟失更新的問題,但會出幻讀。數據
(4)SERIALIZABLE 事務被處理爲順序執行。 解決全部問題transaction
默認爲 REPEATABLE-READ
1.查看
SELECT @@tx_isolation;(8.0版以前)
SELECT @@transaction_isolation;(8.0版)
2.設置
注:8.0版中設置隔離級別的時候,除了 SERIALIZABLE 外,其他級別的鏈接符替換爲空格顯示
set session transaction isolation level SERIALIZABLE;
set session transaction isolation level REPEATABLE READ;