Postgresql
升級前備份 PostgreSQL 集群的最佳方法
我注意到
PGDATA
在升級過程中文件夾發生了變化(這在我使用pg_upgrade --links
命令時是正常的),但我不知道在升級之前備份集群以便在發生故障時恢復它的最佳方法。AFAIK,備份我的集群的幾種方法是:
- pg_dumpall
- pg_basebackupp
- 柏油
我測試了
pg_dumpall
和pg_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 倍,那麼可能會發生一些可疑的事情,但在轉儲/恢復之後磁碟大小變小是正常的。