經(jīng)歷了太久的事務(wù)仑最,最終還是會找到自己的港灣扔役,迎來終章。
即事務(wù)四大特性下的? -----》一致性
【放心警医,我還是會陪著大家( ̄ ̄)~*亿胸。關(guān)注再看,后續(xù)不斷(??)】
復(fù)習(xí)下前面的內(nèi)容预皇,怕大家忘記啦侈玄!<(??)>
redo log:保證事務(wù)持久性。當(dāng)數(shù)據(jù)更新后吟温,會在內(nèi)存 redo log 緩沖里面做一次備份序仙,當(dāng)緩沖區(qū)裝滿后,再由后臺任務(wù)持久化到磁盤鲁豪。如果機器發(fā)生意外潘悼,系統(tǒng)重啟之后在讀取 redo log 恢復(fù)最新數(shù)據(jù)。
undo log:保證事務(wù)原子性爬橡,記錄數(shù)據(jù)行更改前狀態(tài)治唤,如果事務(wù)回滾、提交失敗或意外情況糙申,那這個事務(wù)操作就不會成立宾添,當(dāng)發(fā)生錯誤情況,直接通過直接 undo log 進性數(shù)據(jù)回滾柜裸。因此保證了與更改前數(shù)據(jù)同步缕陕。
MVCC: 保證事務(wù)隔離性,為什么呢疙挺? 因為讀寫操作榄檬,都是在原數(shù)據(jù)基礎(chǔ)上復(fù)制一份,作為自己的操作版本衔统,然后再對版本數(shù)據(jù)進行操作。這樣各個事務(wù)操作都是針對于自己的版本。所以每次找到的都是當(dāng)前最新版本呢锦爵! o( ̄ ̄)d
好像還差點什么舱殿?
沒錯額,差的就是事務(wù)一致性险掀』ο可能到現(xiàn)在大家差不多就明白,
這個一致性是怎么體現(xiàn)樟氢?請看如下分解
一致性是什么冈绊?
一致性就是數(shù)據(jù)保持一致,在單機下就是事務(wù)的基本特征或特性相同埠啃。在分布式系統(tǒng)中死宣,可以理解為多個節(jié)點中數(shù)據(jù)的值是一致的。
那為什么分布式和單機特征有點不一樣碴开,這之間既有分布式事務(wù)與CAP理論的關(guān)系呢毅该?
后續(xù)分享時,在給大家分享潦牛。{就是這么暖心?(ゝω???)}
總結(jié)下:一致性就是保持眶掌,按照你的邏輯操縱后,數(shù)據(jù)會達到你執(zhí)行操縱預(yù)期值巴碗,所以事務(wù)就通過回滾朴爬,以及恢復(fù),和在并發(fā)環(huán)境下的隔離綜合起來做到一致性橡淆。
這也是為什么大型BAT等公司要求原理召噩,因為別人都是要解決并發(fā)的相關(guān)問題。
后面還會選擇主題分享給大家明垢,?(?????)?
如果大家想學(xué)習(xí)相關(guān)技術(shù)內(nèi)容蚣常,可以留言或者私聊給的。如果需要MySQL的系統(tǒng)性的了解可私聊我痊银,分享一些書單抵蚊、學(xué)習(xí)建議等推薦給大家。
如有幫助溯革,歡迎關(guān)注@三頭六臂哪咤贞绳。微信搜索:蓮花童子哪咤? 沒辦法,我就是吒吒致稀,不學(xué)習(xí)怎么辦呢冈闭?(;′д`)ゞ? 期待大家關(guān)注與留言