1.开启归档
vim /data/pgdata/postgesql.conf
archive_mode = on
archive_command = ‘cp %p /data/pg_archived/%f’
2.pgsql
创建备份
select pg_start_backup(‘baseline’);
数据目录下产生一个backup_label文件
然后,备份整个目录排除pg_xlog目录
tar -zcvf /data/pg_archived/baseline.tar.gz /data/pgdata --exclude=/data/pgdata/pg_xlog
3.pgsql命令
停止备份
select pg_stop_backup();
备注:这样就可以使用增量备份,配合xlog日志进行任意时间点恢复
4.恢复
tar -xvf /data/pg_archived/baseline.tar.gz /
5.创建pg_xlog目录
mkdir /data/pgdata/pg_xlog
mkdir /data/pgdata/pg_xlog/archive_status
6.recovery.conf
restore_command = 'cp /data/pg_archived/%f %p'
7.启动数据库
参考:https://blog.csdn.net/silenceray/article/details/52448439