Postgresql

升級前備份 PostgreSQL 集群的最佳方法

  • March 11, 2020

我注意到PGDATA在升級過程中文件夾發生了變化(這在我使用pg_upgrade --links命令時是正常的),但我不知道在升級之前備份集群以便在發生故障時恢復它的最佳方法。

AFAIK,備份我的集群的幾種方法是:

  • pg_dumpall
  • pg_basebackupp
  • 柏油

我測試了pg_dumpallpg_basebackup,但我發現在升級和恢復之後,大小和文件發生了PGDATA變化(例如WAL文件夾)。

這是正常的嗎?推薦使用哪種方法來備份/恢復集群?

AFAIK,備份我的集群的幾種方法是:pg_dumpall、pg_basebackupp 或 tar。

此外,如果您的文件系統/作業系統具有此功能,則文件系統即時快照。

對於中小型數據庫,使用這些方法中的任何一種都可以。

選擇您覺得最舒服的方法。

使用 tar/cp 備份時,請記住在進行備份之前關閉集群。

邏輯備份(pg_dump + pg_dumpall)具有可移植性(到其他 Pg 版本)的額外優勢。但是恢復是一個多步驟的過程,使用 Fs/directory 只是簡單地替換內容。

我測試了 pg_dumpall 和 pg_basebackup 但我發現在升級和恢復之後,PGDATA 的大小和文件確實發生了變化(例如 WAL 文件夾)。正常嗎

是的,完全正常。我的意思是 - 如果差異是 100 倍,那麼可能會發生一些可疑的事情,但在轉儲/恢復之後磁碟大小變小是正常的。

引用自:https://dba.stackexchange.com/questions/261681