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文件
启动服务器
相关推荐
草莓熊Lotso13 小时前
【Redis 初阶】Set 类型深度解析:去重集合的运算能力与实战场景
linux·网络·数据库·windows·redis·tcp/ip·缓存
l1t1 天前
DeepSeek总结的修复pgrust v0.2 #83:generate_series 聚合及其底层的两个成本 - #84
数据库·postgresql
郝学胜-神的一滴1 天前
C++11 工程级应用 06:自己造一个类似Python的Range迭代器
开发语言·c++·windows·python·程序人生·microsoft
LabVIEW开发1 天前
使用 LabVIEW 获取文件的创建日期:从内置函数到 Windows API 封装
网络·windows·labview·labview知识·labview功能·labview程序
2601_962181961 天前
数据库之PostgreSQL详解
数据库·postgresql
pnoker1 天前
IoT DC3 时序存储选型:四款数据库可插拔
数据库·物联网·postgresql·时序数据库·influxdb·tdengine·iotdb
超级码里奥20242 天前
OpenClaw(龙虾[特殊字符])AI 智能体安装教程
windows·node.js
YCOSA20252 天前
雨晨 Windows 11 IoT 企业版 LTSC 26H2 轻装 26300.9278 自用版
windows·物联网
丈剑走天涯2 天前
基于 Python 3 语法的 PyCharm 练习示例,涵盖列表操作、类型判断及数据清洗等核心知识点
windows·python·pycharm
AxureMost2 天前
Dopamine 3.0.10 音乐播放器
windows