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文件
启动服务器
相关推荐
梓仁沐白6 小时前
ubuntu+windows双系统切换后蓝牙设备无法连接
windows·ubuntu
小怪兽ysl10 小时前
【PostgreSQL使用pg_filedump工具解析数据文件以恢复数据】
数据库·postgresql
九鼎科技-Leo10 小时前
什么是 WPF 中的依赖属性?有什么作用?
windows·c#·.net·wpf
Yang.9912 小时前
基于Windows系统用C++做一个点名工具
c++·windows·sql·visual studio code·sqlite3
我不瘦但很逗13 小时前
Windows下使用DBeaver连接云数据库(MySQL)
数据库·windows
福如意如我心意14 小时前
PostGres命令【常用维护,增删改查】
数据库·postgresql·psql
ashane131414 小时前
Java list
java·windows·list
万里沧海寄云帆14 小时前
Word 插入分节符页码更新问题
windows·microsoft·word
晴天飛 雪14 小时前
Grafana监控PostgreSQL
数据库·postgresql·grafana
dot.Net安全矩阵15 小时前
.NET 通过模块和驱动收集本地EDR的工具
windows·安全·web安全·.net·交互