基于时间点恢复

PostgreSQL基于时间点恢复(PITR)

女生的网名这么多〃 提交于 2019-12-05 03:33:44
数据库的PITR是一般数据库都必须满足的技术。其原理是依据之前的物理备份文件加上wal的预写日志模式备份做的恢复。该技术支持8.*及以上版本。下面主要概述PITR的准备和恢复过程。 测试环境 OS 环境:CentOS 6.2 数据库 :PostgreSQL 9.1.3 pg_home=/home/postgres/ pg_data=/database/pgdata/ 一、前期工作既要恢复,肯定是需要一个备份基础的,否则再怎么的巧妇也难为无米之炊。 1.修改数据库参数,修改postgresql.conf: archive_mode = on archive_timeout = 300 --单位是秒,此处以5分钟为限强制归档,仅作测试 archive_command = 'cp -i %p /home/postgres/archive/%f' wal_level = archive 修改完重启下reload,DB 2.基于文件级别的持续备份, a.基础备份 postgres=# select pg_start_backup('backup_2012_05_20_14:22:10'); b.打包备份pg_data # cd /database # tar -cvzf pgdata.tar ./pgdata c.结束基础备份并切换归档 postgres=# select pg_stop