国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

數(shù)據(jù)庫事務(wù)的四種隔離級別

zzzmh / 2027人閱讀

摘要:使用命令可以查看當前數(shù)據(jù)庫使用的隔離級別在介紹四種隔離級別前先說明三種在使用事務(wù)時會出現(xiàn)的特殊大部分情況會導(dǎo)致錯誤讀類型。是所有隔離級別中最低的一種。

數(shù)據(jù)庫定義了四種隔離級別:

Read Uncommitted(未提交讀)

Read Committed(提交讀)

Repeatable Read(重復(fù)讀)

Serializable(串行化)

這四種隔離依次升高,隔離級別越低,系統(tǒng)開銷越小,并發(fā)支持性更高。

使用命令show variables like "%isolation%";可以查看當前數(shù)據(jù)庫使用的隔離級別

在介紹四種隔離級別前先說明三種在使用事務(wù)時會出現(xiàn)的特殊(大部分情況會導(dǎo)致錯誤)讀類型。

臟讀
臟讀是指一個事務(wù)a修改或添加了一條數(shù)據(jù),在a事務(wù)提交之前,另一個事務(wù)b讀到了這條數(shù)據(jù),并進行了操作。a如果回滾的話,臟讀可能會導(dǎo)致b操作不存在的數(shù)據(jù)。

不可重復(fù)讀
在一次事務(wù)中的兩次相同條件的查詢不一致,比如a事務(wù)執(zhí)行select count(*) from user where name="alex" 這時事務(wù)b插入了一條數(shù)據(jù)name=alex并提交這就會導(dǎo)致事務(wù)a第二次查詢的時候多了一個計數(shù)

幻讀
幻讀與不可重復(fù)讀相反,事務(wù)a與事務(wù)b是完全隔離的,事務(wù)a執(zhí)行"select id from user得到的id為1和2.這個時候b事務(wù)在user表中添加了一條數(shù)據(jù)id=3并提交,然后事務(wù)a想添加一條id為3的數(shù)據(jù),如果id是唯一的,那a就會發(fā)現(xiàn)插不進去并提示dumplicate entry 3 for key id,原因是事務(wù)a阻止事務(wù)b的插入行為。

注意不要混淆不可重復(fù)讀和幻讀

Read Uncommited

在RU模式下,即使事務(wù)沒有commit,在其他事務(wù)中仍可以讀到未提交的數(shù)據(jù)。

RU是所有隔離級別中最低的一種。RU模式會導(dǎo)致臟讀

Read Commited

RC模式下,事務(wù)只能讀取到已經(jīng)commit的數(shù)據(jù)。

比如事務(wù)a在執(zhí)行時,如果事務(wù)b沒有提交,a是讀不到b的數(shù)據(jù)的。如果b提交a便能讀到b修改的數(shù)據(jù)。

RC可以避免臟讀,但是會導(dǎo)致不可重復(fù)讀。

大部分系統(tǒng)使用的是RC模式

Repeatable

RR模式下,事務(wù)的多次Read不會受其他事務(wù)的影響(無論提交與否)

可以理解為RR模式下事務(wù)a在創(chuàng)建的時候獲取了一次當前時刻數(shù)據(jù)的快照,快照不受其余事務(wù)的影響。

RR模式可能會導(dǎo)致幻讀,因為無法感知其余事務(wù),可能導(dǎo)致重復(fù)的插入。

mysql innoDB的RR模式可以一定程度避免幻讀,該特性是通過間隙鎖(gap lock)來實現(xiàn)的,間隙鎖的原理可以參照這篇文章http://www.jianshu.com/p/bf86...

Serializable

串行化,顧名思義,是將所有讀寫操作完全串行。

串行化是所有隔離級別中最高的

每次讀都需要獲得表級共享鎖,讀寫相互都會阻塞

串行化對資源的開銷大,對并發(fā)支持不好,只在,某些場景下使用。

最后給出四個隔離級別對三種讀類型的對照表:

隔離級別 臟讀 不可重復(fù)讀 幻讀
Read Uncommited 可能 可能 可能
Read Commited 不可能 可能 可能
Repeatable Read 不可能 不可能 可能
Serializable 不可能 不可能 不可能

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/17650.html

相關(guān)文章

發(fā)表評論

0條評論

zzzmh

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<