2.4.4 案例理解4种事务的隔离级别
生活随笔
收集整理的這篇文章主要介紹了
2.4.4 案例理解4种事务的隔离级别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2.4.4 通過案例理解4種事務的隔離級別
MySQL數據庫管理·實戰案例7
需求
1 分析當前數據庫的事務隔離級別
2 對四種事務隔離級別進行切換,并對比其效果,最終使用哪種隔離級別。
# 設置隔離級別 mysql root@localhost:(none)> set session tx_isolation='READ-UNCOMMITTED'; Query OK, 0 rows affected Time: 0.001s # 查看隔離級別 mysql root@localhost:(none)> select @@tx_isolation; +------------------+ | @@tx_isolation | +------------------+ | READ-UNCOMMITTED | +------------------+讀未提交 Read uncommited
兩個事務
A事務進行寫入,未提交
B事務,此時就可以讀到A寫入的數據(臟數據)
當A進行回滾操作后,B此時也讀不到
讀已提交
兩個事務,
只有當B事務寫入,并提交后,
A事務才能讀到B插入的新數據
可重復讀
兩個事務,
B事務進行了寫入,并提交,A事務此時仍舊是讀到之前的數據,
只有A事務也提交或退出后,才可以讀到B插入的新數據。
在左邊的事務里面永遠都只能看到一條數據
在左邊提交本次會話后才可以,看到右邊新增的數據。
串行化
兩個事務,
互相隔離,可以并發讀,但是不能讀寫。
左邊鎖了
串行話,會產生鎖。寫沒有完成,不能讀
兩個事務可以并發讀,但是不能并發讀寫
總結
以上是生活随笔為你收集整理的2.4.4 案例理解4种事务的隔离级别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2.3.8 mysql安全之审计
- 下一篇: 2.4.5 MySQL InnoDB重做