我使用以下命令支持 Postgres DB 9.1:
pg_basebackup -h 127.0.0.1 -U replicationuser -D /storage/test_backup -Ft -z -P
在 postgresql.conf 我有这个设置:
wal_level = hot_standby
但是,在pg_basebackup
运行结束时,我收到此警告:
注意:未启用 WAL 归档;您必须确保通过其他方式复制所有需要的 WAL 段以完成备份
我只关心从开始时的数据备份pg_basebackup
(我可以承受一点晚上的停机时间,所以我关闭了使用这个 PG 实例作为后端 DB 的应用服务器,然后开始备份)。我不需要也不打算进行“持续备份”。
问题:我真的必须从启动pg_basebackup
命令时复制 WAL 才能进行完整备份吗?或者该警告是为了实现“连续存档”功能而严格设计的?
是的你是。
DB 需要当前的 WAL 才能从基本备份启动。
您可以
pg_basebackup -X stream
在 9.3 及更高版本上使用复制所有必需的 WAL 以及初始基本备份。