为了减少RMAN备份对其它进程的整体I/O影响,提供了duration参数,如果备份运行时间超过了指定的持续时间,将取消备份。
EG :backup duration 0:30 database;
注意:不可以使用backup database plus archivelog命令时指定duration。
使用keep参数来重写默认的保存策略。
EG: backup database keep forever; -- 永久保留
keep until time = ‘sysdate + 10’; -- 保留10天
参数exclude 排除上一次备份以来没有发生变化的数据文件。如果想保留这些文件,可以使用noexclude参数。
EG: backup database noexclude keep until time = ‘sysdate +20’ tag=’fullbackup’
在不需要执行备份操作就可以扫描数据库物理错误和逻辑错误。使用validate参数实现些功能。
EG:backup validate database;
注意:虽产生一些文本,看着像备份集,但在validate期间不会生成任何备份文件。
如果数据文件是只读的,在备份数据库时可能就不需要每次都备份这些只读文件。提供了skip参数,可以跳过脱机的、只读的或不可存取的数据文件。
EG:backup database skip readonly skip offline; ---跳过只读和脱机文件备份
Backup database skip readonly skip inaccessiable; --跳过只读和不能读取的数据文件备份
备份优化会使RMAN默认不备份没有发生变化的表空间。但如果要执行一个忽略这个配置的特定备份操作,可以使用Force参数来确保备份所有的数据文件。
EG:backup database force;
Oracle允许用户在备份进程中指示只备份给定时间以来没有备份过的数据文件。
如果只想备份之前没有备份过的数据文件可以使用not backed up 参数。
EG:backup database not backed up;
可在在指定的时间备份指定的数据文件。使用since time参数。备份最近两天没有备份过的数据文件如下:
EG:backup database not backed up since time=’sysdate -2’ -- nls_date格式表示时间
在默认情况下,RMAN会检查数据库块的逻辑讹误。如果发现了任何讹误,备份将失败。可以使用backup 命令的check logical选项来配置备份操作执行逻辑讹误检查。
EG:backup check logical database; --检查同时备份数据库
Backup validate check logical database; --只检查 不备份
如果在给定的错误数内仍然要继续执行备份,就需要先设置maxcorrupt参数如下:
EG:run{ set maxcorrupt for datafile 1,2,3,4,5,6,7 to 10;
Backup validate check logical database; }