在oracle 10g中,提供了backup ... keep功能来重载配置好的retention策略。 在oracle 11g中,可以重定义backup ... keep命令来创建长期保留的备份,称作archival backups,又叫历史归档备份,目的是将数据库某一时刻数据生成历史备份,备份里包含了datafile、spfile、controlfile、archivelog,这个历史备份不受retention policy的限制,通过使用backup ... keep ...指定备份的保留时长,archival backup主要应用与历史数据的永久保留以及将数据库完整恢复到另一个环境里。rman不需要保留自创建archival backup之后归档日志,archival backup的目标不是创建基于时间点的恢复。
前提条件:
You can create archival backups only if you are using a recovery catalog
创建archival backup :
RMAN> backup database format '/u02/archives/db_%U.bkp' tag quarterly keep until time 'sysdate+375' restore point firstquart01;
将常规备份转化为archival backup :
RMAN> change backup tag 'weekly_bkp' keep forever;
将archival backup转化为常规备份:
RMAN> change copy of database controlfile nokeep; ... RMAN> change backup tag 'weekly_bkp' nokeep;
.