站長資訊網
        最全最豐富的資訊網站

        什么是臟讀?

        什么是臟讀?

        什么是臟讀?

        臟讀又稱無效數據的讀出,是指在數據庫訪問中,事務T1將某一值修改,然后事務T2讀取該值,此后T1因為某種原因撤銷對該值的修改,這就導致了T2所讀取到的數據是無效的,值得注意的是,臟讀一般是針對于update操作的。

        解決方法

        mysql數據庫定義了四種隔離級別:

        • serializable:可避免臟讀、不可重復讀、虛讀情況的發生。

        • repeatable read:可以避免臟讀、不可重復讀情況的發生。

        • read committed:可以避免臟讀情況發生。

        • read uncommitted:最低級別,都會發生。

        注意:事務的隔離級別收到數據庫的限制,不同的數據庫支持的隔離級別不一定相同

        臟讀:修改時加排他鎖,直到事務提交后才釋放,讀取時加上共享鎖后(這樣在事務1讀取數據的過程中,其他事務就不會修改該數據),不允許任何事務操作該數據,只能讀取,之后1如果有更新操作,那么會轉換為排他鎖,其他事務更無權參與進來讀寫,這樣就防止了臟讀問題

        但是當事務1讀取數據過程中,有可能其他事務也讀取了該數據,讀取完畢后共享鎖釋放,此時事務1修改數據,修改完畢提交事務,其他事務再次讀取數據時候發現數據不一致,就會出現先不可重復讀問題,所以這樣不能夠避免不可重復讀問題

        當執行不同的隔離級別時,可能會發生各種各樣不同的問題。下面對他們進行總結并舉例說明:

        臟讀發生在一個事務A讀取了被另一個事務B修改,但是還未提交的數據。假如B回退,則事務A讀取的是無效的數據。這跟不可重復讀類似,但是第二個事務不需要執行提交。


        推薦教程:《PHP教程》《MySQL教程》

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 亚洲AV午夜福利精品一区二区| 久久久久久极精品久久久| 99视频在线精品国自产拍亚瑟 | 亚洲精品岛国片在线观看| 亚洲视频精品在线| 97精品国产一区二区三区| 亚洲精品午夜无码专区| 国产精品自在在线午夜福利| 国产成人精品福利网站在线| 日韩精品区一区二区三VR| 日韩精品一区二区三区在线观看| 91精品免费久久久久久久久| 国产精品福利网站导航| 国产午夜福利精品久久2021 | 久久性精品| 国产精品欧美亚洲韩国日本久久 | 国产欧美精品一区二区色综合| 精品国产麻豆免费人成网站| 精品麻豆丝袜高跟鞋AV| 日韩精品久久无码中文字幕| 亚洲精品高清在线| 亚洲精品国产精品乱码不卡| 精品国内自产拍在线观看| 国产亚洲午夜高清国产拍精品| 隔壁老王国产在线精品| 影视网欧洲精品| 日韩精品国产自在久久现线拍| 国产精品久久自在自线观看| AV无码精品一区二区三区| 国内精品人妻无码久久久影院| 日韩精品视频一区二区三区| 日产精品久久久久久久性色| 亚洲国产另类久久久精品| 在线涩涩免费观看国产精品| 亚洲精品乱码久久久久66| 亚洲精品无码成人AAA片| 伊在人亚洲香蕉精品区麻豆| 亚洲?V无码乱码国产精品| 午夜精品久久久内射近拍高清| 无码人妻精品一区二区蜜桃百度 | 91精品视频在线|