常見的PG備份有三種方式:定時pg_dump,定時備份文件,還有基於WAL的備份,它們各有優劣,這篇文章我就對比一下這三種方法,總結一下三種的概念、做法,以及適合的場景。
概念
- “pg_dump”很容易理解,對數據庫定期使用pg_dump備份;
- “定時備份文件”,對數據庫對數據目錄進行備份;
- WAL是“write ahead log”的簡稱,pg中每個操作都會產生WAL,我們可以利用WAL恢復到任意時間點。
做法
- PG_DUMP
pg_dump是postgresql的備份工具,可以將數據庫導出成sql文件或二進制自定義格式(通過指定-Fc),通過pg_dump導出的數據庫文件,可以通過psql或pg_restore恢復。有一個值得稱讚的地方是pg_dump的不同版本格式兼容做的很到位,老版本dump出來的備份都可以在新版本中恢復。
需要注意的點
主庫和從庫配置需要一樣的地方
故障自動恢復