您好,登錄后才能下訂單哦!
小編給大家分享一下數(shù)據(jù)庫(kù)的并發(fā)操作可能帶來(lái)的問(wèn)題是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
什么是數(shù)據(jù)庫(kù)并發(fā)操作
數(shù)據(jù)庫(kù)是一個(gè)共享資源,可以提供多個(gè)用戶使用。這些用戶程序可以一個(gè)一個(gè)地串行執(zhí)行,每個(gè)時(shí)刻只有一個(gè)用戶程序運(yùn)行,執(zhí)行對(duì)數(shù)據(jù)庫(kù)的存取,其他用戶程序必須等到這個(gè)用戶程序結(jié)束以后方能對(duì)數(shù)據(jù)庫(kù)存取。但是如果一個(gè)用戶程序涉及大量數(shù)據(jù)的輸入/輸出交換,則數(shù)據(jù)庫(kù)系統(tǒng)的大部分時(shí)間處于閑置狀態(tài)。因此,為了充分利用數(shù)據(jù)庫(kù)資源,發(fā)揮數(shù)據(jù)庫(kù)共享資源的特點(diǎn),應(yīng)該允許多個(gè)用戶并行地存取數(shù)據(jù)庫(kù)。但這樣就會(huì)產(chǎn)生多個(gè)用戶程序并發(fā)存取同一數(shù)據(jù)的情況,若對(duì)并發(fā)操作不加控制就可能會(huì)存取和存儲(chǔ)不正確的數(shù)據(jù),破壞數(shù)據(jù)庫(kù)的一致性,所以數(shù)據(jù)庫(kù)管理系統(tǒng)必須提供并發(fā)控制機(jī)制。并發(fā)控制機(jī)制的好壞是衡量一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)性能的重要標(biāo)志之一。
數(shù)據(jù)庫(kù)并發(fā)操作帶來(lái)的問(wèn)題
(1)丟失更新
當(dāng)兩個(gè)或多個(gè)事物讀入同一數(shù)據(jù)并修改,會(huì)發(fā)生丟失更新問(wèn)題,即后一個(gè)事物更新的結(jié)果被前一事務(wù)所做更新覆蓋 即當(dāng)事務(wù)A和B同事進(jìn)行時(shí),事務(wù)A對(duì)數(shù)據(jù)已經(jīng)改變但并未提交時(shí)B又對(duì)同一數(shù)據(jù)進(jìn)行了修改(注意此時(shí)數(shù)據(jù)是A還未提交改變的數(shù)據(jù)),到時(shí)A做的數(shù)據(jù)改動(dòng)丟失了
(2)不可重復(fù)讀
當(dāng)兩個(gè)數(shù)據(jù)讀取某個(gè)數(shù)據(jù)后,另一事務(wù)執(zhí)行了對(duì)該數(shù)據(jù)的更新,當(dāng)前一事務(wù)再次讀取該數(shù)據(jù)(希望與第一次讀取的是相同的值)時(shí),得到的數(shù)據(jù)與前一次的不一樣,這是由于第一次讀取數(shù)據(jù)后,事務(wù)B對(duì)其做了修改,導(dǎo)致再次讀取數(shù)據(jù)時(shí)與第一次讀取的數(shù)據(jù)不想同
(3)讀‘臟數(shù)據(jù)’
當(dāng)一個(gè)事務(wù)修改某個(gè)數(shù)據(jù)后,另一事務(wù)對(duì)該數(shù)據(jù)進(jìn)行了讀取,由于某種原因前一事務(wù)撤銷了對(duì)改數(shù)據(jù)的修改,即將修改過(guò)的數(shù)據(jù)恢復(fù)原值,那么后一事務(wù)讀到的數(shù)據(jù)與數(shù)據(jù)可得不一致,稱之為讀臟數(shù)據(jù)
注意:還有一個(gè)叫“幽靈數(shù)據(jù)” 幽靈數(shù)據(jù)與臟數(shù)據(jù)類似,不過(guò)幽靈數(shù)據(jù)是指事務(wù)提交之后讀到的數(shù)據(jù),但是在讀取之后又進(jìn)行了對(duì)前一事務(wù)的恢復(fù),而臟數(shù)據(jù)是指并未提交前讀取的數(shù)據(jù)
以上是“數(shù)據(jù)庫(kù)的并發(fā)操作可能帶來(lái)的問(wèn)題是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。