Debian PostgreSQL数据恢复方法主要包括以下几种:
PITR(Point-In-Time Recovery):
vim $PGDATA/postgresql.conf
wal_level='replica'
archive_mode='on'
archive_command='cp %p /backup/pgarch'
pg_basebackup -Ft -Pv -Xf -z -Z5 -p5432 -D /backup/pgback3
create table test01(id int primary key,name varchar(20));
insert into test01 values(1,'a'),(2,'b'),(3,'c');
rm -rf $PGDATA/*
cp -r /home/postgres/backup/* $PGDATA
vi $PGDATA/postgresql.auto.conf
restore_command='cp /backup/pgarch/%f %p'
recovery_target_time='2024-12-07 14:14:29.975833+08'
recovery_target_timeline='latest'
启动数据库:pg_ctl start -D /backup/pgback3 -o '-p 5433'
逻辑备份与恢复:
pg_dump
和 pg_dumpall
命令进行逻辑备份和恢复。pg_dump -Fc laozheng > laozheng.dump
psql -d laozheng < laozheng.dump
物理备份(归档+物理):
pg_basebackup
命令进行基础备份,同时归档 WAL 日志。pg_basebackup -d /backup/full_backup -Ft -Pv -Xf -z -Z5 -p5432 -h 192.168.11.32 -U postgres
这些方法可以帮助您在不同的场景下恢复 PostgreSQL 数据库的数据。