PG的WAL機制

      網友投稿 844 2025-03-31

      對于數據庫的設計,數據庫的數據安全最為重要,如何才能保證數據庫的數據不丟失。PG是使用WAL(Write Ahead Logging)來實現的,即數據頁寫入磁盤前務必要將對應的Xlog寫入磁盤,這句話就是整個數據庫實現數據不丟失的核心思想。在PG中主要要做到以下兩點:

      1. 數據頁落盤前必須要保證對應的XLog刷盤。即數據頁落盤前要查看PageHeader中存儲的LSN對應的日志是否落盤,若沒有落盤一定要等此LSN落盤后才可以將數據頁落盤。

      2.為了防止數據頁的半寫問題(操作系統的刷盤的原子操作的最小單位是4K,而一個page頁面的大小是8K,所以一個數據頁落盤時可能出現機器宕機等情況,導致數據寫了一半,另一半沒有寫下去),PG使用full Page write機制來應對此問題,即checkpoint后,第一次修改頁面時將頁面的所有信息存儲在XLog中,這樣當出現上述情況后就可以使用Xlog中保存的頁面數據來恢復數據頁面。

      然而上面的描述很顯然有一個場景沒有解決,如果Xlog頁面壞掉怎么辦,因為我們需要使用Xlog來恢復數據頁面,Xlog壞掉了沒法修復了。這種情況PG提供了一個有損恢復的工具,貌似叫做pg_xlogreset。

      其還有一種場景就是某個Xlog頁面壞掉了,且對應的數據頁面同事出現半寫的問題,這種情況使用pg_xlogreset可以讓數據庫起來,但是這個半寫的頁面沒有修復,一旦讀取此頁面就會出現CRC校驗報錯或者其他的問題,總之會報錯或者直接Painc掉。這種情況PG又提供了一個GUC參數zero_damaged_pages,即遇到此頁面先跳過,使其可以讀取其它頁面。

      WAL基本原理大概就是這樣,詳細還是要看代碼滴。

      PG的WAL機制

      數據倉庫服務 GaussDB(DWS)

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:excel用函數保留小數位的教程
      下一篇:設置高亮重復項為什么是灰色的?(取消重復高亮顏色)
      相關文章
      亚洲AV无码一区二区三区网址| 亚洲白色白色永久观看| 亚洲av无码av制服另类专区| 久久精品亚洲乱码伦伦中文| www.亚洲色图| 韩国亚洲伊人久久综合影院| 亚洲国产精品免费观看| 亚洲国产成人精品青青草原| 亚洲高清资源在线观看| 久久精品国产亚洲AV高清热| 久久精品国产亚洲AV香蕉| 亚洲精品在线观看视频| 亚洲人成网址在线观看| 亚洲三级电影网站| 中文字幕亚洲精品| 亚洲天堂福利视频| 亚洲人成网站在线观看播放动漫| 亚洲国产精品久久网午夜| 亚洲最大在线观看| 亚洲免费视频观看| 亚洲人成网站色在线观看| 亚洲欧美日韩中文二区| 亚洲av永久中文无码精品| 国产精品亚洲小说专区| 亚洲国产一级在线观看 | 亚洲国产韩国一区二区| 91亚洲视频在线观看| 亚洲一区二区三区高清视频| 狠狠色伊人亚洲综合网站色| 亚洲欧美乱色情图片| 日韩亚洲人成网站| 国产啪亚洲国产精品无码| 国产亚洲精品影视在线产品| 亚洲乱码国产乱码精品精| 亚洲成av人片天堂网| 在线观看亚洲人成网站| 亚洲一区二区三区在线网站| 亚洲色欲啪啪久久WWW综合网| 亚洲AV日韩AV永久无码色欲| 亚洲精品岛国片在线观看| 亚洲精品无码专区久久久|