您的位置:首页 > 数据库 > Oracle

rman—实验—基于日志序列号的不完整恢复

2014-07-24 17:28 309 查看
首先模拟数据库故障。

[sql] view
plaincopyprint?

SQL> select * from v$log;  

  

    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARC STATUS           FIRST_CHANGE# FIRST_TIME  

---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- -------------------  

         1          1         10   52428800          1 NO  CURRENT                 475533 2011-10-18 05:26:01  

         2          1          8   52428800          1 YES INACTIVE                475528 2011-10-18 05:25:54  

         3          1          9   52428800          1 YES INACTIVE                475531 2011-10-18 05:26:00  

  

SQL> select file_name from dba_data_files;  

  

FILE_NAME  

------------------------------------------------------------  

/u01/app/oracle/oradata/orcl/users01.dbf  

/u01/app/oracle/oradata/orcl/sysaux01.dbf  

/u01/app/oracle/oradata/orcl/undotbs01.dbf  

/u01/app/oracle/oradata/orcl/system01.dbf  

/u01/app/oracle/oradata/orcl/tb1.dbf  

  

SQL> ! rm -rf /u01/app/oracle/oradata/orcl/tb1.dbf  

  

SQL> shutdown abort;  

ORACLE 例程已经关闭。  

SQL> startup mount  

ORACLE 例程已经启动。  

  

Total System Global Area  167772160 bytes  

Fixed Size                  1266392 bytes  

Variable Size              88083752 bytes  

Database Buffers           75497472 bytes  

Redo Buffers                2924544 bytes  

数据库装载完毕。  

然后恢复

[sql] view
plaincopyprint?

[oracle@linux ~]$ rman target /  

  

恢复管理器: Release 10.2.0.4.0 - Production on 星期二 10月 18 05:28:19 2011  

  

Copyright (c) 1982, 2007, Oracle.  All rights reserved.  

  

已连接到目标数据库: ORCL (DBID=1292118315, 未打开)  

  

RMAN> run {  

2> set until sequence=9;  

3> restore database;  

4> recover database;  

5> alter database open resetlogs; }  

  

正在执行命令: SET until clause  

使用目标数据库控制文件替代恢复目录  

  

启动 restore 于 18-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  

通道 ORA_DISK_1: 正在读取备份片段 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_18/o1_mf_nnndf_TAG20111018T045948_79s5t51d_.bkp  

通道 ORA_DISK_1: 已还原备份片段 1  

段句柄 = /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_18/o1_mf_nnndf_TAG20111018T045948_79s5t51d_.bkp 标记 = TAG20111018T045948  

通道 ORA_DISK_1: 还原完成, 用时: 00:00:25  

完成 restore 于 18-10月-11  

  

启动 recover 于 18-10月-11  

使用通道 ORA_DISK_1  

  

正在开始介质的恢复  

  

存档日志线程 1 序列 8 已作为文件 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_8_79s5w7pt_.arc 存在于磁盘上  

存档日志线程 1 序列 9 已作为文件 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_9_79s6h7gh_.arc 存在于磁盘上  

存档日志线程 1 序列 1 已作为文件 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_1_79s71zhg_.arc 存在于磁盘上  

存档日志线程 1 序列 2 已作为文件 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_2_79s7bt9q_.arc 存在于磁盘上  

存档日志线程 1 序列 3 已作为文件 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_3_79s7bzmk_.arc 存在于磁盘上  

存档日志线程 1 序列 4 已作为文件 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_4_79s7c0fv_.arc 存在于磁盘上  

存档日志线程 1 序列 5 已作为文件 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_5_79s7c18t_.arc 存在于磁盘上  

存档日志线程 1 序列 6 已作为文件 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_6_79s7c1w0_.arc 存在于磁盘上  

存档日志线程 1 序列 7 已作为文件 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_7_79s7c2oc_.arc 存在于磁盘上  

存档日志线程 1 序列 8 已作为文件 /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_8_79s7c8no_.arc 存在于磁盘上  

存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_8_79s5w7pt_.arc 线程 =1 序列 =8  

存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_9_79s6h7gh_.arc 线程 =1 序列 =9  

存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_1_79s71zhg_.arc 线程 =1 序列 =1  

存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_1_79s7bnv9_.arc 线程 =1 序列 =1  

存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_2_79s7bt9q_.arc 线程 =1 序列 =2  

存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_3_79s7bzmk_.arc 线程 =1 序列 =3  

存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_4_79s7c0fv_.arc 线程 =1 序列 =4  

存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_5_79s7c18t_.arc 线程 =1 序列 =5  

存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_6_79s7c1w0_.arc 线程 =1 序列 =6  

存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_7_79s7c2oc_.arc 线程 =1 序列 =7  

存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_18/o1_mf_1_8_79s7c8no_.arc 线程 =1 序列 =8  

介质恢复完成, 用时: 00:00:04  

完成 recover 于 18-10月-11  

最后可以看见数据库已经打开。

[sql] view
plaincopyprint?

SQL> select status from v$instance;  

  

STATUS  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数据库 oracle RMAN