Postgresql
我需要幫助理解 Postgres 的歸檔清理功能
我正在閱讀http://www.postgresql.org/docs/9.2/static/pgarchivecleanup.html,對我來說,它似乎會從我的從屬伺服器中刪除不需要執行恢復的所有 WAL 段從伺服器崩潰(所以基本上除了最後 1 個或幾個段之外的所有內容,取決於我的從伺服器執行的距離)。如果可能的話,我希望能夠在數據損壞或意外刪除的不幸情況下執行緊急時間點恢復。為此,我是否有以下選擇:
- 保留自上次創建基礎備份以來的所有WAL 段(在我的情況下,這是從伺服器創建的那個)
- 一直在做基礎備份,還是用 PGBarman 等做一些事情?
- 我完全誤解了什麼嗎?
如果使用選項 1,我認為 pg archive cleanup 命令對我來說毫無用處。如果使用選項 2,我是否應該按預期使用清理命令(在送出後立即刪除所有額外的 WAL 段)?我還缺少什麼(請參閱選項 3)?
注意:我使用的是 Postgres 9.2.4
你是對的。如果您需要 PITR 功能,則需要在進行基本備份和希望能夠恢復到的時間之間保留所有存檔。
出於這個原因,通常最好每週進行一次新的基礎備份(例如),然後將它們輪換出來,這樣您就可以保留一個基礎備份和一周的存檔。
PgBarman 應該能夠幫助您解決這個問題。
如果您想要 PITR,則不需要清理存檔。