首先开始前对数据库做一个全备份,后面的实验都依赖这个备份集。
RMAN> show all; RMAN 配置参数为: CONFIGURE RETENTION POLICY TO REDUNDANCY 2; CONFIGURE BACKUP OPTIMIZATION ON; CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default CONFIGURE CONTROLFILE AUTOBACKUP ON; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO COMPRESSED BACKUPSET; CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE MAXSETSIZE TO 2 G; CONFIGURE ENCRYPTION FOR DATABASE OFF; # default CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/10.2.0/db_1/dbs/snapcf_orcl.f'; # default RMAN> backup database include current controlfile plus archivelog; 启动 backup 于 11-10月-11 当前日志已存档 使用通道 ORA_DISK_1 通道 ORA_DISK_1: 启动压缩的归档日志备份集 通道 ORA_DISK_1: 正在指定备份集中的存档日志 输入存档日志线程 =1 序列 =2 记录 ID=1 时间戳=764126146 输入存档日志线程 =1 序列 =3 记录 ID=2 时间戳=764126147 输入存档日志线程 =1 序列 =4 记录 ID=3 时间戳=764126147 输入存档日志线程 =1 序列 =5 记录 ID=4 时间戳=764126153 输入存档日志线程 =1 序列 =6 记录 ID=5 时间戳=764126153 输入存档日志线程 =1 序列 =7 记录 ID=6 时间戳=764126154 输入存档日志线程 =1 序列 =8 记录 ID=7 时间戳=764126155 输入存档日志线程 =1 序列 =9 记录 ID=8 时间戳=764126155 输入存档日志线程 =1 序列 =10 记录 ID=9 时间戳=764126156 输入存档日志线程 =1 序列 =11 记录 ID=10 时间戳=764126156 输入存档日志线程 =1 序列 =12 记录 ID=11 时间戳=764126156 输入存档日志线程 =1 序列 =13 记录 ID=12 时间戳=764126157 输入存档日志线程 =1 序列 =14 记录 ID=13 时间戳=764202092 输入存档日志线程 =1 序列 =15 记录 ID=14 时间戳=764277988 输入存档日志线程 =1 序列 =16 记录 ID=15 时间戳=764278251 输入存档日志线程 =1 序列 =17 记录 ID=16 时间戳=764278522 通道 ORA_DISK_1: 正在启动段 1 于 11-10月-11 通道 ORA_DISK_1: 已完成段 1 于 11-10月-11 段句柄=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_annnn_TAG20111011T193522_798bhvwh_.bkp 标记=TAG20111011T193522 注释=NONE 通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:04 完成 backup 于 11-10月-11 启动 backup 于 11-10月-11 使用通道 ORA_DISK_1 通道 ORA_DISK_1: 启动压缩的全部数据文件备份集 通道 ORA_DISK_1: 正在指定备份集中的数据文件 输入数据文件 fno=00001 name=/u01/app/oracle/oradata/orcl/system01.dbf 输入数据文件 fno=00003 name=/u01/app/oracle/oradata/orcl/sysaux01.dbf 输入数据文件 fno=00002 name=/u01/app/oracle/oradata/orcl/undotbs01.dbf 输入数据文件 fno=00005 name=/u01/app/oracle/oradata/orcl/tb1.dbf 输入数据文件 fno=00004 name=/u01/app/oracle/oradata/orcl/users01.dbf 输入数据文件 fno=00006 name=/u01/app/oracle/oradata/orcl/tb2.dbf 通道 ORA_DISK_1: 正在启动段 1 于 11-10月-11 通道 ORA_DISK_1: 已完成段 1 于 11-10月-11 段句柄=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_nnndf_TAG20111011T193526_798bhz92_.bkp 标记=TAG20111011T193526 注释=NONE 通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:25 通道 ORA_DISK_1: 启动压缩的全部数据文件备份集 通道 ORA_DISK_1: 正在指定备份集中的数据文件 备份集中包括当前控制文件 通道 ORA_DISK_1: 正在启动段 1 于 11-10月-11 通道 ORA_DISK_1: 已完成段 1 于 11-10月-11 段句柄=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_ncnnf_TAG20111011T193526_798bjrrg_.bkp 标记=TAG20111011T193526 注释=NONE 通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01 完成 backup 于 11-10月-11 启动 backup 于 11-10月-11 当前日志已存档 使用通道 ORA_DISK_1 通道 ORA_DISK_1: 启动压缩的归档日志备份集 通道 ORA_DISK_1: 正在指定备份集中的存档日志 输入存档日志线程 =1 序列 =18 记录 ID=17 时间戳=764278554 通道 ORA_DISK_1: 正在启动段 1 于 11-10月-11 通道 ORA_DISK_1: 已完成段 1 于 11-10月-11 段句柄=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_annnn_TAG20111011T193554_798bjv74_.bkp 标记=TAG20111011T193554 注释=NONE 通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:02 完成 backup 于 11-10月-11 启动 Control File and SPFILE Autobackup 于 11-10月-11 段 handle=/u01/app/oracle/flash_recovery_area/ORCL/autobackup/2011_10_11/o1_mf_s_764278556_798bjwsj_.bkp comment=NONE 完成 Control File and SPFILE Autobackup 于 11-10月-11 RMAN> list backup; 备份集列表 =================== BS 关键字 大小 设备类型占用时间 完成时间 ------- ---------- ----------- ------------ ---------- 13 16.94M DISK 00:00:04 11-10月-11 BP 关键字: 12 状态: AVAILABLE 已压缩: YES 标记: TAG20111011T193522 段名:/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_annnn_TAG20111011T193522_798bhvwh_.bkp 备份集 13 中的已存档日志列表 线程序列 低 SCN 时间下限 下一个 SCN 下一次 ---- ------- ---------- ---------- ---------- --------- 1 2 469822 09-10月-11 474560 10-10月-11 1 3 474560 10-10月-11 474563 10-10月-11 1 4 474563 10-10月-11 474566 10-10月-11 1 5 474566 10-10月-11 474569 10-10月-11 1 6 474569 10-10月-11 474571 10-10月-11 1 7 474571 10-10月-11 474573 10-10月-11 1 8 474573 10-10月-11 474575 10-10月-11 1 9 474575 10-10月-11 474577 10-10月-11 1 10 474577 10-10月-11 474579 10-10月-11 1 11 474579 10-10月-11 474581 10-10月-11 1 12 474581 10-10月-11 474583 10-10月-11 1 13 474583 10-10月-11 474585 10-10月-11 1 14 474585 10-10月-11 485487 10-10月-11 1 15 485487 10-10月-11 494945 11-10月-11 1 16 494945 11-10月-11 495088 11-10月-11 1 17 495088 11-10月-11 495267 11-10月-11 BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间 ------- ---- -- ---------- ----------- ------------ ---------- 14 Full 94.91M DISK 00:00:23 11-10月-11 BP 关键字: 13 状态: AVAILABLE 已压缩: YES 标记: TAG20111011T193526 段名:/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_nnndf_TAG20111011T193526_798bhz92_.bkp 备份集 14 中的数据文件列表 文件 LV 类型 Ckp SCN Ckp 时间 名称 ---- -- ---- ---------- ---------- ---- 1 Full 495272 11-10月-11 /u01/app/oracle/oradata/orcl/system01.dbf 2 Full 495272 11-10月-11 /u01/app/oracle/oradata/orcl/undotbs01.dbf 3 Full 495272 11-10月-11 /u01/app/oracle/oradata/orcl/sysaux01.dbf 4 Full 495272 11-10月-11 /u01/app/oracle/oradata/orcl/users01.dbf 5 Full 495272 11-10月-11 /u01/app/oracle/oradata/orcl/tb1.dbf 6 Full 495272 11-10月-11 /u01/app/oracle/oradata/orcl/tb2.dbf BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间 ------- ---- -- ---------- ----------- ------------ ---------- 15 Full 1.03M DISK 00:00:00 11-10月-11 BP 关键字: 14 状态: AVAILABLE 已压缩: YES 标记: TAG20111011T193526 段名:/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_ncnnf_TAG20111011T193526_798bjrrg_.bkp 包括的控制文件: Ckp SCN: 495280 Ckp 时间: 11-10月-11 BS 关键字 大小 设备类型占用时间 完成时间 ------- ---------- ----------- ------------ ---------- 16 2.50K DISK 00:00:01 11-10月-11 BP 关键字: 15 状态: AVAILABLE 已压缩: YES 标记: TAG20111011T193554 段名:/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_annnn_TAG20111011T193554_798bjv74_.bkp 备份集 16 中的已存档日志列表 线程序列 低 SCN 时间下限 下一个 SCN 下一次 ---- ------- ---------- ---------- ---------- --------- 1 18 495267 11-10月-11 495283 11-10月-11 BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间 ------- ---- -- ---------- ----------- ------------ ---------- 17 Full 6.80M DISK 00:00:01 11-10月-11 BP 关键字: 16 状态: AVAILABLE 已压缩: NO 标记: TAG20111011T193556 段名:/u01/app/oracle/flash_recovery_area/ORCL/autobackup/2011_10_11/o1_mf_s_764278556_798bjwsj_.bkp 包括的控制文件: Ckp SCN: 495289 Ckp 时间: 11-10月-11 包含的 SPFILE: 修改时间: 11-10月-11
下面模拟数据库只丢失了数据文件,可以看见数据库只能打到mount状态了。
SQL> startup ORACLE 例程已经启动。 Total System Global Area 167772160 bytes Fixed Size 1266392 bytes Variable Size 71306536 bytes Database Buffers 92274688 bytes Redo Buffers 2924544 bytes 数据库装载完毕。 ORA-01157: 无法标识/锁定数据文件 1 - 请参阅 DBWR 跟踪文件 ORA-01110: 数据文件 1: '/u01/app/oracle/oradata/orcl/system01.dbf' SQL> select status from v$instance; STATUS ------------ MOUNTED SQL> select * from v$recover_file; FILE# ONLINE ONLINE_ ERROR CHANGE# TIME ---------- ------- ------- ----------------------------------------------------------------- ---------- -------------- 1 ONLINE ONLINE 495272 11-10月-11 2 ONLINE ONLINE 495272 11-10月-11 3 ONLINE ONLINE 495272 11-10月-11 4 ONLINE ONLINE 495272 11-10月-11 5 ONLINE ONLINE 495272 11-10月-11 6 ONLINE ONLINE 495272 11-10月-11 已选择6行。
下面记录恢复操作
[oracle@linux ~]$ rman target / 恢复管理器: Release 10.2.0.4.0 - Production on 星期二 10月 11 19:51:28 2011 Copyright (c) 1982, 2007, Oracle. All rights reserved. 已连接到目标数据库: ORCL (DBID=1291899075, 未打开) RMAN> restore database; 启动 restore 于 11-10月-11 使用目标数据库控制文件替代恢复目录 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: sid=155 devtype=DISK 通道 ORA_DISK_1: 正在开始恢复数据文件备份集 通道 ORA_DISK_1: 正在指定从备份集还原的数据文件 正将数据文件00001还原到/u01/app/oracle/oradata/orcl/system01.dbf 正将数据文件00002还原到/u01/app/oracle/oradata/orcl/undotbs01.dbf 正将数据文件00003还原到/u01/app/oracle/oradata/orcl/sysaux01.dbf 正将数据文件00004还原到/u01/app/oracle/oradata/orcl/users01.dbf 正将数据文件00005还原到/u01/app/oracle/oradata/orcl/tb1.dbf 正将数据文件00006还原到/u01/app/oracle/oradata/orcl/tb2.dbf 通道 ORA_DISK_1: 正在读取备份片段 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_nnndf_TAG20111011T193526_798bhz92_.bkp 通道 ORA_DISK_1: 已还原备份片段 1 段句柄 = /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_nnndf_TAG20111011T193526_798bhz92_.bkp 标记 = TAG20111011T193526 通道 ORA_DISK_1: 还原完成, 用时: 00:00:26 完成 restore 于 11-10月-11 RMAN> recover database; 启动 recover 于 11-10月-11 使用通道 ORA_DISK_1 正在开始介质的恢复 介质恢复完成, 用时: 00:00:02 完成 recover 于 11-10月-11 RMAN> alter database open; 数据库已打开