[root@wallet01 ~]# rpm -ivh pg_rman-1.3.8-1.pg96.rhel6.x86_64.rpm
[root@wallet01 ~]# su - postgres
[postgres@wallet01 ~]$ mkdir archive
[postgres@wallet01 ~]$ mkdir backup
[postgres@wallet01 ~]$ vi /var/lib/pgsql/9.6/data/postgresql.conf
archive_mode = on
archive_command = 'cp %p /home/postgres/archive/%f'
wal_level = archive
[postgres@wallet01 ~]$ pg_ctl restart
waiting for server to shut down....... done
server stopped
server starting
[postgres@wallet01 ~]$ export PGDATA=/var/lib/pgsql/9.6/data
[postgres@wallet01 ~]$ export ARCLOG_PATH=/home/postgres/archive
[postgres@wallet01 ~]$ export BACKUP_PATH=/home/postgres/backup
[postgres@wallet01 ~]$ pg_rman init
INFO: ARCLOG_PATH is set to '/home/postgres/archive'
INFO: SRVLOG_PATH is set to '/var/lib/pgsql/9.6/data/pg_log'
[postgres@wallet01 ~]$ pg_rman backup --backup-mode=full
INFO: copying database files
INFO: copying archived WAL files
INFO: backup complete
INFO: Please execute 'pg_rman validate' to verify the files are correctly copied.
[postgres@wallet01 ~]$ pg_rman validate
INFO: validate: "2019-04-12 16:02:15" backup and archive log files by CRC
INFO: backup "2019-04-12 16:02:15" is valid
[postgres@wallet01 ~]$ pg_rman show
=====================================================================
StartTime EndTime Mode Size TLI Status
=====================================================================
2019-04-12 16:02:15 2019-04-12 16:03:21 FULL 1572MB 1 OK
[postgres@wallet01 ~]$ pg_rman backup --backup-mode=incremental
INFO: copying database files
INFO: copying archived WAL files
INFO: backup complete
INFO: Please execute 'pg_rman validate' to verify the files are correctly copied.
[postgres@wallet01 ~]$ pg_rman validate
INFO: validate: "2019-04-12 16:15:12" backup and archive log files by CRC
INFO: backup "2019-04-12 16:15:12" is valid
[postgres@wallet01 ~]$ pg_rman show
=====================================================================
StartTime EndTime Mode Size TLI Status
=====================================================================
2019-04-12 16:15:12 2019-04-12 16:15:17 INCR 248MB 1 OK
2019-04-12 16:02:15 2019-04-12 16:03:21 FULL 1572MB 1 OK
[postgres@wallet01 ~]$ pg_rman backup --backup-mode=archive
INFO: copying archived WAL files
INFO: backup complete
INFO: Please execute 'pg_rman validate' to verify the files are correctly copied.
[postgres@wallet01 ~]$ pg_rman validate
INFO: validate: "2019-04-12 16:30:04" archive log files by CRC
INFO: backup "2019-04-12 16:30:04" is valid
[postgres@wallet01 ~]$ pg_rman show
=====================================================================
StartTime EndTime Mode Size TLI Status
=====================================================================
2019-04-12 16:30:04 2019-04-12 16:30:06 ARCH 33MB 1 OK
2019-04-12 16:15:12 2019-04-12 16:15:17 INCR 248MB 1 OK
2019-04-12 16:02:15 2019-04-12 16:03:21 FULL 1572MB 1 OK
[postgres@wallet01 ~]$ pg_ctl stop -m fast
waiting for server to shut down...... done
server stopped
[postgres@wallet01 ~]$ mv archive archive_backup
[postgres@wallet01 ~]$ mkdir archive
[postgres@wallet01 ~]$ cd /var/lib/pgsql/9.6
[postgres@wallet01 9.6]$ mv data data_backup
[postgres@wallet01 9.6]$ mkdir data
[postgres@wallet01 9.6]$ chmod -R 0700 data
[postgres@wallet01 ~]$ pg_rman restore --hard-copy
WARNING: pg_controldata file "/var/lib/pgsql/9.6/data/global/pg_control" does not exist
INFO: the recovery target timeline ID is not given
INFO: use timeline ID of latest full backup as recovery target: 1
INFO: calculating timeline branches to be used to recovery target point
INFO: searching latest full backup which can be used as restore start point
INFO: found the full backup can be used as base in recovery: "2019-04-12 16:02:59"
INFO: copying online WAL files and server log files
INFO: clearing restore destination
INFO: validate: "2019-04-12 16:02:59" backup and archive log files by SIZE
INFO: backup "2019-04-12 16:02:59" is valid
INFO: restoring database files from the full mode backup "2019-04-12 16:02:59"
INFO: searching incremental backup to be restored
INFO: validate: "2019-04-12 16:15:12" backup and archive log files by SIZE
INFO: backup "2019-04-12 16:15:12" is valid
INFO: restoring database files from the incremental mode backup "2019-04-12 16:15:12"
INFO: searching backup which contained archived WAL files to be restored
INFO: backup "2019-04-12 16:15:12" is valid
INFO: restoring WAL files from backup "2019-04-12 16:15:12"
INFO: validate: "2019-04-12 16:30:04" archive log files by SIZE
INFO: backup "2019-04-12 16:30:04" is valid
INFO: restoring WAL files from backup "2019-04-12 16:30:04"
INFO: restoring online WAL files and server log files
INFO: generating recovery.conf
INFO: restore complete
HINT: Recovery will start automatically when the PostgreSQL server is started.
[postgres@wallet01 ~]$ pg_ctl start
server starting
[postgres@wallet01 ~]$ pg_ctl status
pg_ctl: server is running (PID: 29889)
/usr/pgsql-9.6/bin/postgres
当前标题:【PostgreSQL】数据库备份与恢复(pg_rman)
URL地址:
http://chengdu.cdxwcx.cn/article/goghes.html