Postgresql
Postgres 備份 PITR 策略
注意:-可能是這個問題聽起來太寬泛了。但是,我相信,它是一個非常好的平台(stackexchange),我可以在這裡從全球專家 DBA 那裡獲得建議。因為,我無法做出決定或選擇正確的選項。
Que:我是 postgres 的新手,需要為我們不斷增長的數據庫製作 PITR 解決方案。由於數據庫大小正在快速增加,因此還需要計劃增量備份解決方案。如果我們不能失去任何數據並且還需要 PITR,那麼哪一個應該是最好的解決方案:
有一個備用數據庫,如果發生任何故障/災難,請對備用數據庫集群進行完整備份(pg_basebackup)並從該備份(recovery.conf -time)執行 PITR。
- 不斷進行增量備份+日誌備份。
- 使用任何 3rd 方工具對 postgres 數據庫進行增量備份和日誌備份。
如果有人建議該選項,請告訴我哪個選項應該更好或任何其他選項。另外,如果我們對該數據庫有多個備用數據庫或任何負面影響,請告訴我數據庫是否會發生任何性能影響保持待機狀態。
-提前致謝!
有很多可能性!
PITR 與待機
PITR 和備用是互補的解決方案:
Standby
從以下方面恢復很有趣:
- 物理問題:伺服器崩潰,數據中心不可用
- 並提供快速切換程序
PITR
將在數據損壞的情況下為您提供幫助:如果有人執行了損壞您的數據的操作(DROP TABLE , UPDATE 帶有錯誤的 WHERE 子句……)。然後,您將能夠在此操作之前恢復您的數據庫。
執行
PITR 實施
有很多工具可以幫助您執行 PITR,我已經使用過:
- 調酒師
- 沃爾
而且還有:
- PgBackREST
- …
本文列出並比較了幾種 LINUX 備份工具。
關於 PITR 的實施,我最重要的建議是:
- 使用現有工具(不要嘗試編寫新工具)
- 測試你的備份
- 監控您的備份(並查看監控點失敗)!
備用實施
由於它是本機的,因此在實現方面不需要額外的工具。
但:
- 正確監控
- 編寫並測試您的開關程序(並定期重新測試它們,以防止程序在需要時不准確!)