http://code.google.com/p/pg-rman/
http://se-suganuma.blogspot.jp/2010/12/pgrmanpostgresql.html
http://d.hatena.ne.jp/interdb/20091210/1260410830
http://postgresql.g.hatena.ne.jp/pgsql/20091209
--
$ export BACKUP_PATH=/home/go/data/backup/pg9139
$ pg_rman backup -b full
备份时, 按指定规则删除过期或多余的备份
保留至前1天的最新的1个验证过的备份
$ pg_rman backup -b full --keep-data-generations=1 --keep-data-days=2
Start Status
================================
2012-04-25 10:03:08 OK <= 今天, 本次创建的备份
2012-04-24 10:02:28 OK <= 前一天, 保留
2012-04-24 09:00:00 OK <= 前一天, 保留
2012-04-24 07:01:10 OK <= 前一天, 删除
保留今天最新的1个备份, 其余全部删除
$ pg_rman backup -b full --keep-data-generations=1 --keep-data-days=0
Start Status
================================
2012-04-25 10:03:08 OK <= 今天, 本次创建的备份
2012-04-25 10:02:28 OK <= 今天, 保留
2012-04-24 09:00:00 OK <= 前一天, 删除
保留前1天最新的0个备份, 其余全部删除
1. 如果存在今天的全备份, 则删除至前一天为止所有备份
2. 如果不存在今天的全备份, 则保留前一天最新的1个备份
$ pg_rman backup -b full --keep-data-generations=0 --keep-data-days=1
其余全部删除并创建新备份
$ pg_rman backup -b full --keep-data-generations=0 --keep-data-days=0
Start Status
================================
2012-04-25 10:03:08 OK <= 今天, 本次创建的备份
2012-04-25 10:02:28 OK <= 今天, 保留
2012-04-24 09:00:00 OK <= 前一天, 删除
$ pg_rman show
$ pg_rman show -a
$ pg_rman show "2012"
$ pg_rman show "2012-04"
$ pg_rman show "2012-04-23"
$ pg_rman show "2012-04-23 04"
$ pg_rman show "2012-04-23 04:12"
$ pg_rman show "2012-04-23 04:12:42"
$ pg_rman show timeline
$ pg_rman validate
$ pg_rman validate "2012-04-23 04:12:42"
删除备份
$ pg_rman delete "2012-04-23 04:00:00"
1. 指定时间必须是 full 备份的时间
2. 删除的是指定时间之前的所有备份 (full, incremental, archive)
0 件のコメント:
コメントを投稿