MySQL邏輯架構(gòu)圖:
image.png
如果有人要賒賬或者還賬的話呐矾,掌柜一般有兩種做法:
一種做法是直接把賬本翻出來,把這次賒的賬加上去或者扣除掉;
另一種做法是先在粉板上記下這次的賬,等打烊以后再把賬本翻出來核算缴渊。
而粉板和賬本配合的整個過程,其實就是 MySQL 里經(jīng)常說到的 WAL 技術(shù)鱼炒,WAL 的全稱是 Write-Ahead Logging衔沼,它的關(guān)鍵點就是先寫日志,再寫磁盤昔瞧,也就是先寫粉板指蚁,等不忙的時候再寫賬本。
具體來說硬爆,當(dāng)有一條記錄需要更新的時候欣舵,InnoDB 引擎就會先把記錄寫到 redo log(粉板)里面擎鸠,并更新內(nèi)存缀磕,這個時候更新就算完成了。同時劣光,InnoDB 引擎會在適當(dāng)?shù)臅r候袜蚕,將這個操作記錄更新到磁盤里面,而這個更新往往是在系統(tǒng)比較空閑的時候做绢涡,這就像打烊以后掌柜做的事牲剃。
此文章為11月Day10學(xué)習(xí)筆記,內(nèi)容來源于極客時間《MySQL實戰(zhàn)45講》雄可,強烈推薦該課程