案例 - 高速启库到某一有效备份时间点

案例 - 快速启库到某一有效备份时间点

***************************************************************************************

*案例:快速启库到某一有效备份时间点                                                                              

*备份时间:15:17                                                                       

*恢复时间:15:50                                                                       

*模拟思路:15:50数据库被破坏,为快速启库,

                    将数据库恢复到最近备份时间点(归档有效),启库

***************************************************************************************

RMAN> backup database;--做一次备份

SQL>alter system switch logfile;--切一次归档

RMAN>list backup of database;--查看备份时间为15:17

--Tag: TAG20140527T151751,备份标签,读出备份时间为2014年5月27日15:17:51

--Elapsed Time: 00:00:59,备份消耗时间为00:00:59

--15:17:51+00:00:59=15:18:50通过备份起始时间、消耗时间计算出备份结束时间约为15:18:50

BS Key  Type LV Size       Device TypeElapsed TimeCompletion Time

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

1259    Full    39.16M    DISK       00:00:41     27-MAY-14     

        BP Key: 1259   Status: AVAILABLE  Compressed: YES Tag: TAG20140527T151751

        Piece Name:/u01/app/oracle/flash_recovery_area/METRO/backupset/2014_05_27/o1_mf_nnndf_TAG20140527T151751_9r8cjk4l_.bkp

  List of Datafiles in backup set1259

  File LV Type Ckp SCN    Ckp Time Name

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

  2       Full 840251     27-MAY-14/u01/app/oracle/oradata/metro/undotbs01.dbf

  3       Full 840251     27-MAY-14/u01/app/oracle/oradata/metro/sysaux01.dbf

  5       Full 840251     27-MAY-14/u01/app/oracle/oradata/metro/example01.dbf

 

BS Key  Type LV Size       Device TypeElapsed TimeCompletion Time

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

1260    Full    82.20M    DISK       00:00:59     27-MAY-14     

        BP Key: 1260   Status: AVAILABLE  Compressed: YES Tag: TAG20140527T151751

        Piece Name:/u01/app/oracle/flash_recovery_area/METRO/backupset/2014_05_27/o1_mf_nnndf_TAG20140527T151751_9r8cjjso_.bkp

  List of Datafiles in backup set1260

  File LV Type Ckp SCN    Ckp Time Name

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

  1       Full 840249     27-MAY-14/u01/app/oracle/oradata/metro/system01.dbf

  4       Full 840249     27-MAY-14/u01/app/oracle/oradata/metro/users01.dbf

SQL>select SEQUENCE# ,to_char(FIRST_TIME,'yyyy-mm-dd hh:mi:ss'),FIRST_CHANGE#,NEXT_CHANGE#  fromv$archived_log;

--只有在备份所耗费时间内的全部归档存在且为可用状态时,才能恢复到数据库备份结束时可以打开的状态,对比时间,锁定到可用归档信息sequence#为752。

--SEQUENCE#:序列号

--FIRST_TIME:归档开始时间

--FIRST_CHANGE#:归档开始时检查点号

--NEXT_CHANGE#:归档结束时检查点号

SEQUENCE# TO_CHAR(FIRST_TIME, FIRST_CHANGE# NEXT_CHANGE#

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

       ......

       742 2014-05-27 10:15:32        830392       830401

       743 2014-05-27 10:15:34        830401       830423

       744 2014-05-27 10:15:57        830423       834578

       745 2014-05-27 12:17:02        834578       834812

       746 2014-05-27 12:22:34        834812       836728

       747 2014-05-27 01:23:32        836728       836911

       748 2014-05-27 01:30:10        836911       837020

       749 2014-05-27 01:32:45        837020       837091

       750 2014-05-27 01:35:17        837091       837140

       751 2014-05-27 01:37:02        837140       840364

       752 2014-05-27 03:21:30        840364       840491        

       753 2014-05-27 03:25:22        840491       840504

       ......

SQL>shutdown immediate;--关库,准备模拟恢复到指定时间点

SQL>startup mount;--将数据库启动到mount

RMAN>restore database;--转储数据库

RMAN>recover database until sequence 753;--备份恢复所依赖的序列号到752(即753-1=752)

SQL> alter database open;--启库

alter database open

*

ERROR at line 1:

ORA-01589: must use RESETLOGS or NORESETLOGS option for database open

SQL> alter database open resetlogs;--根据提示执行resetlogs操作,同步当前日志

SQL> select status,instance_name from v$instance;--数据库打开,查询状态

STATUS       INSTANCE_NAME

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

OPEN         metro