Windows环境下 postgresql16 增量备份及恢复

修改postgresql.conf

xml 复制代码
isten_addresses = '*'
wal_level = replica    
archive_mode = on
archive_command = 'copy /V  "%p"  C:\\backup\\wal_files\\%f ' 注意写法,这里有大坑
restore_command = 'copy  c:\\backup\\wal_files\\%f   "%p" '    
recovery_target_time = '2021-09-03 11:26:33.258335+08' //根据恢复的时间点改写
recovery_target_inclusive = false

建立备份文件夹

xml 复制代码
D:\backup\base_files\\存放基础备份
D:\backup\wal_files\\存放wal日志

建立基础备份

xml 复制代码
pg_basebackup.exe -p 2002 -D D:\backup\base_files -Fp  -P -v  -U liurui

测试代码

xml 复制代码
select current_timestamp;\\获取当前时间戳

create table test(c1 int, c2 timestamp default current_timestamp);\\创建测试表

insert into test select generate_series(1, 1000000), clock_timestamp(); //插入100万条记录

此时wal_files、pg_wal都会同时产生日志

数据恢复

xml 复制代码
停止服务器
将data改名为data_old
复制base_files到data文件处,并改名为data,设置data 的权限为 Users组完全控制。
在data中新建recovery.signal文件
postgresql.conf 中的recovery_target_time\\修改值到需要的时间
在D:\PostgreSQL\16打开cmd
pg_env.bat
cd bin
pg_ctl -D D:\PostgreSQL\16\data start \\恢复
关闭cmd
删除在data中新建recovery.signal文件
启动服务器
相关推荐
知识的搬运工旺仔12 小时前
唯一索引与 NULL 值:PostgreSQL 主键约束与 NULLS NOT DISTINCT
数据库·后端·sql·postgresql
熊明才13 小时前
WSL2 网络突然瘫痪(Network is unreachable / 没有 eth0)最短修复指南(2026年9月20日亲测可用)
linux·windows·wsl2
jnrjian14 小时前
EDB postgresql TDE 加密的文件
postgresql
IvorySQL15 小时前
PostgreSQL 日报|逻辑解码竞态条件修复(9 月 20 日)
数据库·人工智能·postgresql
xbzb18 小时前
Windows 启动故障修复知识整理:蓝屏 / 无限重启 / 盘符 X / 无 PE 盘
windows
XMYX-018 小时前
Rocky_Linux_9.8_安装_PostgreSQL_16
postgresql
我命由我1234518 小时前
Mac 操作系统 - 一些使用记录
运维·windows·学习·系统安全·运维开发·mac·学习方法
foolishlee19 小时前
SCRAM-SHA-256
数据库·算法·postgresql
IvorySQL1 天前
IvorySQL 5.6 发布:PG 18.6 内核升级,沙盒即开即用
数据库·人工智能·postgresql
腾科IT教育1 天前
PGCM考试详解:认证价值、含金量及与PGCA、PGCE区别
postgresql·pg·pgcm考试·pgca考试·pgce考试