2.4.4 案例理解4种事务的隔离级别
2.4.4 通過(guò)案例理解4種事務(wù)的隔離級(jí)別
MySQL數(shù)據(jù)庫(kù)管理·實(shí)戰(zhàn)案例7
需求
1 分析當(dāng)前數(shù)據(jù)庫(kù)的事務(wù)隔離級(jí)別
2 對(duì)四種事務(wù)隔離級(jí)別進(jìn)行切換,并對(duì)比其效果,最終使用哪種隔離級(jí)別。
# 設(shè)置隔離級(jí)別 mysql root@localhost:(none)> set session tx_isolation='READ-UNCOMMITTED'; Query OK, 0 rows affected Time: 0.001s # 查看隔離級(jí)別 mysql root@localhost:(none)> select @@tx_isolation; +------------------+ | @@tx_isolation | +------------------+ | READ-UNCOMMITTED | +------------------+讀未提交 Read uncommited
兩個(gè)事務(wù)
A事務(wù)進(jìn)行寫(xiě)入,未提交
B事務(wù),此時(shí)就可以讀到A寫(xiě)入的數(shù)據(jù)(臟數(shù)據(jù))
當(dāng)A進(jìn)行回滾操作后,B此時(shí)也讀不到
讀已提交
兩個(gè)事務(wù),
只有當(dāng)B事務(wù)寫(xiě)入,并提交后,
A事務(wù)才能讀到B插入的新數(shù)據(jù)
可重復(fù)讀
兩個(gè)事務(wù),
B事務(wù)進(jìn)行了寫(xiě)入,并提交,A事務(wù)此時(shí)仍舊是讀到之前的數(shù)據(jù),
只有A事務(wù)也提交或退出后,才可以讀到B插入的新數(shù)據(jù)。
在左邊的事務(wù)里面永遠(yuǎn)都只能看到一條數(shù)據(jù)
在左邊提交本次會(huì)話后才可以,看到右邊新增的數(shù)據(jù)。
串行化
兩個(gè)事務(wù),
互相隔離,可以并發(fā)讀,但是不能讀寫(xiě)。
左邊鎖了
串行話,會(huì)產(chǎn)生鎖。寫(xiě)沒(méi)有完成,不能讀
兩個(gè)事務(wù)可以并發(fā)讀,但是不能并發(fā)讀寫(xiě)
總結(jié)
以上是生活随笔為你收集整理的2.4.4 案例理解4种事务的隔离级别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 2.3.8 mysql安全之审计
- 下一篇: 02、Kubernetes 入门(上)-