本文主要是介绍Windows环境下 postgresql16 增量备份及恢复,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
修改postgresql.conf
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
建立备份文件夹
D:\backup\base_files\\存放基础备份
D:\backup\wal_files\\存放wal日志
建立基础备份
pg_basebackup.exe -p 2002 -D D:\backup\base_files -Fp -P -v -U liurui
测试代码
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都会同时产生日志
数据恢复
停止服务器
将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文件
启动服务器
这篇关于Windows环境下 postgresql16 增量备份及恢复的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!