常见的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出来的备份都可以在新版本中恢复。
需要注意的点
主库和从库配置需要一样的地方
故障自动恢复