测试开始:
RMAN> delete backupset;
RMAN> list backupset;
SQL> select * from try;
COL
----------
1
2
3
4
5
6
RMAN> shutdown immediate;
RMAN> startup mount;
RMAN> configure controlfile autobackup on;
RMAN> configure controlfile autobackup format for device type disk to 'D:\backup\%F';
RMAN> list backupset;
产生4个备份集,三个保存数据文件,一个自动备份控制文件
RMAN> backup archivelog all format='D:\backup\%U' delete input;
产生2个备份集,一个是archive log(1_4.DBF),一个是自动备份控制文件
RMAN> alter database open;
SQL> select * from try;
COL
----------
1
2
3
4
5
6
SQL> insert into try values(7);
SQL> insert into try values(8);
SQL> commit;
SQL> select * from try;
COL
----------
1
2
3
4
5
6
7
8
SQL> alter system switch logfile;
SQL> insert into try values(9);
SQL> insert into try values(10);
SQL> commit;
SQL> select * from try;
COL
----------
1
2
3
4
5
6
7
8
9
10
增量备份是联机备份
RMAN> backup incremental level 1 cumulative database format='D:\backup\%U';
产生4个备份集,一个控制文件
RMAN> backup archivelog all format='D:\backup\%U' delete input;
启动 backup 于 17-6月 -04
当前日志已存档
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
通道 ORA_DISK_1: 正在启动存档日志备份集
通道 ORA_DISK_1: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =5 记录 ID=8 时间戳=529078325
通道 ORA_DISK_1: 正在启动段 1 于 17-6月 -04
通道 ORA_DISK_2: 正在启动存档日志备份集
通道 ORA_DISK_2: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =6 记录 ID=9 时间戳=529078677
通道 ORA_DISK_2: 正在启动段 1 于 17-6月 -04
通道 ORA_DISK_1: 已完成段 1 于 17-6月 -04
段 handle=D:\BACKUP\1CFOI6CL_1_1 comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:02
通道 ORA_DISK_1: 正在删除存档日志
存档日志文件名 =D:\ORACLE\ARCHIVE\1_5.DBF 记录 ID=8 时间戳 =529078325
通道 ORA_DISK_2: 已完成段 1 于 17-6月 -04
段 handle=D:\BACKUP\1BFOI6CL_1_1 comment=NONE
通道 ORA_DISK_2: 备份集已完成, 经过时间:00:00:02
通道 ORA_DISK_2: 正在删除存档日志
存档日志文件名 =D:\ORACLE\ARCHIVE\1_6.DBF 记录 ID=9 时间戳 =529078677
完成 backup 于 17-6月 -04
启动 Control File and SPFILE Autobackup 于 17-6月 -04
段 handle=D:\BACKUP\C-2441060056-20040617-06 comment=NONE
完成 Control File and SPFILE Autobackup 于 17-6月 -04
产生3个备份集,2个是archive log(1_5.DBF,1_6.DBF),一个是自动备份控制文件
****此处特别声明在执行上面一条命令前只有1_5.DBF一个归档文件,在归档位置。
SQL> select * from try;
COL
----------
1
2
3
4
5
6
7
8
9
10
RMAN> shutdown immediate;
RMAN> exit
模拟灾难,将oradata下的文件夹改名,并重建空文件夹
参照rdbms/demo/case2.rcv恢复过程
RESTORE CONTROLFILE FROM AUTOBACKUP;
ALTER DATABASE MOUNT;
RESTORE DATABASE;
RECOVER DATABASE;
ALTER DATABASE OPEN RESETLOGS;
RMAN> connect target /;
RMAN> set dbid=2441060056;
RMAN> startup nomount;
RMAN> restore controlfile from 'd:\backup\C-2441060056-20040617-06';
用最后一次的自动备份控制文件的备份集恢复控制文件
启动 restore 于 17-6月 -04
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在恢复控制文件
通道 ORA_DISK_1: 恢复完成
正在复制控制文件
输出文件名=D:\ORACLE\ORADATA\MYDB\CONTROL01.CTL
输出文件名=D:\ORACLE\ORADATA\MYDB\CONTROL02.CTL
输出文件名=D:\ORACLE\ORADATA\MYDB\CONTROL03.CTL
完成 restore 于 17-6月 -04
RMAN> alter database mount;
数据库已加载
RMAN> restore database;
启动 restore 于 17-6月 -04
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到D:\ORACLE\ORADATA\MYDB\SYSTEM01.DBF
正将数据文件00006恢复到D:\ORACLE\ORADATA\MYDB\ODM01.DBF
正将数据文件00008恢复到D:\ORACLE\ORADATA\MYDB\USERS01.DBF
正将数据文件00010恢复到D:\ORACLE\ORADATA\MYDB\DATA01.DBF
正将数据文件00012恢复到D:\ORACLE\ORADATA\MYDB\XDB02.ORA
正将数据文件00013恢复到D:\ORACLE\ORADATA\MYDB\EXAMPLE02.ORA
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:\BACKUP\11FOI5FR_1_1 tag=TAG20040617T140234 params=NULL
通道 ORA_DISK_1: 恢复完成
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00002恢复到D:\ORACLE\ORADATA\MYDB\UNDOTBS01.DBF
正将数据文件00003恢复到D:\ORACLE\ORADATA\MYDB\DRSYS01.DBF
正将数据文件00004恢复到D:\ORACLE\ORADATA\MYDB\EXAMPLE01.DBF
正将数据文件00005恢复到D:\ORACLE\ORADATA\MYDB\INDX01.DBF
正将数据文件00009恢复到D:\ORACLE\ORADATA\MYDB\XDB01.DBF
正将数据文件00011恢复到D:\ORACLE\ORADATA\MYDB\SYSTEM02.ORA
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:\BACKUP\12FOI5FR_1_1 tag=TAG20040617T140234 params=NULL
通道 ORA_DISK_1: 恢复完成
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00007恢复到D:\ORACLE\ORADATA\MYDB\TOOLS01.DBF
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:\BACKUP\13FOI5HP_1_1 tag=TAG20040617T140234 params=NULL
通道 ORA_DISK_1: 恢复完成
完成 restore 于 17-6月 -04
RMAN> recover database;
启动 recover 于 17-6月 -04
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在开始恢复增量数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
数据文件 00001 的恢复目标: D:\ORACLE\ORADATA\MYDB\SYSTEM01.DBF
数据文件 00006 的恢复目标: D:\ORACLE\ORADATA\MYDB\ODM01.DBF
数据文件 00008 的恢复目标: D:\ORACLE\ORADATA\MYDB\USERS01.DBF
数据文件 00010 的恢复目标: D:\ORACLE\ORADATA\MYDB\DATA01.DBF
数据文件 00012 的恢复目标: D:\ORACLE\ORADATA\MYDB\XDB02.ORA
数据文件 00013 的恢复目标: D:\ORACLE\ORADATA\MYDB\EXAMPLE02.ORA
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:\BACKUP\17FOI65K_1_1 tag=TAG20040617T141410 params=NULL
通道 ORA_DISK_1: 恢复完成
通道 ORA_DISK_1: 正在开始恢复增量数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
数据文件 00002 的恢复目标: D:\ORACLE\ORADATA\MYDB\UNDOTBS01.DBF
数据文件 00003 的恢复目标: D:\ORACLE\ORADATA\MYDB\DRSYS01.DBF
数据文件 00004 的恢复目标: D:\ORACLE\ORADATA\MYDB\EXAMPLE01.DBF
数据文件 00005 的恢复目标: D:\ORACLE\ORADATA\MYDB\INDX01.DBF
数据文件 00009 的恢复目标: D:\ORACLE\ORADATA\MYDB\XDB01.DBF
数据文件 00011 的恢复目标: D:\ORACLE\ORADATA\MYDB\SYSTEM02.ORA
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:\BACKUP\18FOI65K_1_1 tag=TAG20040617T141410 params=NULL
通道 ORA_DISK_1: 恢复完成
通道 ORA_DISK_1: 正在开始恢复增量数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
数据文件 00007 的恢复目标: D:\ORACLE\ORADATA\MYDB\TOOLS01.DBF
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:\BACKUP\19FOI66F_1_1 tag=TAG20040617T141410 params=NULL
通道 ORA_DISK_1: 恢复完成
正在开始介质的恢复
通道 ORA_DISK_1: 正在启动到默认目标的存档日志恢复
通道 ORA_DISK_1: 正在恢复存档日志
存档日志线程 =1 序列=6
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:\BACKUP\1BFOI6CL_1_1 tag=TAG20040617T141757 params=NULL
通道 ORA_DISK_1: 恢复完成
存档日志文件名 =D:\ORACLE\ARCHIVE\1_6.DBF 线程 =1 序列 =6
无法找到存档日志
存档日志线程 =1 序列=7
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 06/17/2004 14:32:20
RMAN-06054: media recovery requesting unknown log: thread 1 scn 960660