Windows 下的 PostgreSQL PITR WAL 备份设置 博客分类: PostgreSQL PostgreSQLWindowsF#
程序员文章站
2024-02-23 16:10:04
...
0) 创建 WAL 备份目录,比如:
d:\backup\data\wal
1) 修改 postgresql.conf 中的 archive_command 设置,比如:
注1:%p 要用双引号括起来(因为 PostgreSQL 默认安装目录中有空格),路径分隔符不能用“/”,“/V” 是为了验证新文件写入是否正确,更安全一些。
注2:PostgreSQL 8.3 之后,多了一个 archive_mode 设置,要设置为 on, 设置后必须重新启动 PostgreSQL。
设置如下:
2) 在 pgadmin3 里面运行下面的语句使之 archive_command 设置生效:
3) 在 pgadmin3 里面运行:
注:label 建议使用 4) 中所述备份目录的全路径。
4) 备份 PostgreSQL 的 data 目录,此时 PostgreSQL 不必停止 ,尽管照常服务;
5) 在 pgadmin3 里面运行:
6) 检查 WAL 备份目录,是否有 WAL 文件被复制过来,如果有的话就设置成功了。
d:\backup\data\wal
1) 修改 postgresql.conf 中的 archive_command 设置,比如:
archive_command = 'copy /V "%p" d:\\bakup\\data\\wal\\%f'
注1:%p 要用双引号括起来(因为 PostgreSQL 默认安装目录中有空格),路径分隔符不能用“/”,“/V” 是为了验证新文件写入是否正确,更安全一些。
注2:PostgreSQL 8.3 之后,多了一个 archive_mode 设置,要设置为 on, 设置后必须重新启动 PostgreSQL。
设置如下:
archive_mode = on
2) 在 pgadmin3 里面运行下面的语句使之 archive_command 设置生效:
SELECT pg_reload_conf();
3) 在 pgadmin3 里面运行:
SELECT pg_start_backup('label');
注:label 建议使用 4) 中所述备份目录的全路径。
4) 备份 PostgreSQL 的 data 目录,此时 PostgreSQL 不必停止 ,尽管照常服务;
5) 在 pgadmin3 里面运行:
SELECT pg_stop_backup();
6) 检查 WAL 备份目录,是否有 WAL 文件被复制过来,如果有的话就设置成功了。