tabase open; 8> }
created script recover_database
RMAN> create script system_bak{ 2> backup tablespace system format '/home/oracle/rman_bak/hot_bak/system_%s.bak'; 3> }
created script system_bak
2.在catalog database 上查看脚本信息:
基本名称 SQL> select SCRIPT_NAME,SCRIPT_COMMENT from rc_stored_script;
SCRIPT_NAME SCRIPT_COMMENT -------------------- -------------------------------------------------- cold_bak hot_bak recover_database system_bak 脚本内容: SQL> col line for a20 SQL> col script_name for a10 SQL> col script_name for a20 SQL> col text for a50 SQL> select script_name,text from rc_stored_script_line;
SCRIPT_NAME TEXT -------------------- -------------------------------------------------- cold_bak { cold_bak shutdown immediate; cold_bak startup mount; cold_bak allocate channel c1 type disk; cold_bak allocate channel c2 type disk; cold_bak backup database format '/home/oracle/rman_bak/cold _bak/%d_%s_%p.bak';
cold_bak alter database open; cold_bak } hot_bak {
SCRIPT_NAME TEXT -------------------- -------------------------------------------------- hot_bak sql 'alter system switch logfile'; hot_bak allocate channel c1 type disk; hot_bak allocate channel c2 type disk; hot_bak backup database format '/home/oracle/rman_bak/hot_ bak/%d_%s_%p_hot.bak'
hot_bak include current controlfile plus archivelog delete input
hot_bak filesperset 3; hot_bak sql 'alter system switch logfile';
SCRIPT_NAME TEXT -------------------- -------------------------------------------------- hot_bak } recover_database { recover_database startup force mount; recover_database allocate channel c1 type disk; recover_database allocate channel c2 type disk; recover_database restore database; recover_database recover database; recover_database alter database open; recover_database } system_bak { system_bak backup tablespace system format '/home/oracle/rman
SCRIPT_NAME TEXT -------------------- -------------------------------------------------- _bak/hot_bak/system_%s.bak';
system_bak }
3.在生产库上查看、执行、修改、删除脚本:
#查看脚本 RMAN> print script system_bak;
printing stored script: system_bak { backup tablespace system format '/home/oracle/rman_bak/hot_bak/system_%s.bak'; } #执行脚本 RMAN> run{execute script system_bak;}
#修改脚本 RMAN> replace script system_bak{backup tablespace users format '/home/oracle/rman_bak/hot_bak/users_%s.bak';} #删除脚本 RMAN> delete script system_bak;
四.将其他备份文件列入目录:
1.将控制文件、数据文件、归档重做日志文件和备份片段列入目录 如果磁盘上有其它控制文件副本、数据文件副本、备份片段或归档重做日志文件,则可使用CATALOG命令将其列入恢复目录。如果某些备份因时间太早已从控制文件中清除,则可将这些备份列入目录,以便RMAN 在执行还原操作期间使用它们。
以下是将控制文件、数据文件、归档重做日志文件和备份片段列入目录的示例:
RMAN> CATALOG CONTROLFILECOPY '/disk1/controlfile_bkup/2009_01_01/control01.ctl'; RMAN> CATALOG DATAFILECOPY '/disk1/datafile_bkup/2009_01_01/users01.dbf'; RMAN> CATALOG ARCHIVELOG '/disk1/arch_logs/archive1_731.log', '/disk1/arch_logs/archive1_732.log'; RMAN> CATALOG BACKUPPIECE '/disk1/backups/backup_820.bkp';
2.可以将当前启用的快速恢复区中的所有文件列入目录,如下所示: RMAN> CATALOG RECOVERY AREA NOPROMPT;
3.START WITH选项 使用START WITH选项可将在指定目录树中找到的所有文件列入目录。提供表示目录的前缀以及用于查找的可能的文件前缀。不能使用通配符,仅提供一个前缀。
指定目录和子目录中找到的所有类型的备份文件都被列入目录。假定在/tmp/arch_logs目录中有多个备份文件。下列命令将所有文件列入目录: RMAN> CATALOG START WITH '/tmp/arch_logs/';
For example, assume that a group of directories /disk1/backups, /disk1/backups-year2003, /disk1/backupsets, and /disk1/backup