ITPub博客

首页 > Linux操作系统 > Linux操作系统 > RMAN管理的备份与恢复

RMAN管理的备份与恢复

原创 Linux操作系统 作者:zwc1083 时间:2009-02-18 09:43:49 0 删除 编辑

一、配置RMAN环境
    1.配置自动通道
      在9i之前,当使用RMAN执行备份、转储和恢复操作时,必须手工分配通道,并指定相应参数配置,从9i开始,DBA可以将RMAN通道配置存放到RMAN资料库,从而使得
      RMAN可以自动分配通道。但是,当执行特殊RMAN作业时,DBA仍然可以使用ALLOCATE CHANNEL覆盖默认通道配置。
      (1)配置通道并行度。
        RMAN>CONFIGURE DEVICE TYPE DISK PARALLELISM 3
        RMAN>CONFIGURE DEVICE TYPE sbt PARALLELISM 3

      (2)配置所有通道的备份文件格式。默认情况下,RMAN会自动为 DISK 分配一个通道,并且没有任何选项。通过配置自动通道,可以指定所有通道的备份文件格式。示例如下:
        RMAN>CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'D:\BACKUP\%d_%s_%p.bak';
     
      (3)配置特定通道的备份文件格式。当配置自动通道时,如果不指定通道号,则会配置所有通道。如果要培植特定通道,则可以指定通道号。示例如下:
        RMAN>CONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT 'D:\BACKUP\%d_%s_%p.bak';
      
        RMAN>CONFIGURE CHANNEL 2 DEVICE TYPE DISK FORMAT 'D:\BACKUP\%u.bak';

      (4)配置默认存储设备。默认情况下,RMAN的存储设备为DISK。通过配置默认存储设备,可以将默认存储设备配置为磁盘或者磁带。示例如下:
        RMAN>CONFIGURE DEFAULT DEVICE TYPE TO DISK;

RMAN>CONFIGURE DEFAULT DEVICE TYPE TO SBT;        

   2.配置备份集和备份片最大尺寸
     通过配置备份集最大尺寸,可以将多哥文件的备份分布到多个备份集上。注意,当配置备份集最大尺寸时,必须确保其尺寸可以容纳最大数据文件的备份集体。示例如下:
     RMAN>CONFIGURE MAXSETSIZE TO 1G;
    
     默认情况下,每个备份集只包含一个备份片文件,通过培植备份片的最大尺寸,可以将一个大的备份集划分为几个相对小的备份片文件,并将这些备份片文件分布到多个
     设备上。示例如下:
     RMAN>CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 500M;

   3.配置备份优化
     备份优化用于在某些情况下跳过特定文件的备份。如果摸个文件完全相同的备份已经存在,那么当激活备份优化时会跳过该文件。注意,备份优化只适用于BACKUP DATABASE、
     BACKUP ARCHIVELOG ALL/LIKE和BACKUP BACKUPSET ALL命令。默认情况下,RMAN禁止备份优化。激活备份优化的示例如下:
     RMAN>CONFIGURE BACKUP OPTIMIZATION ON
   4.配置多重备份
     默认情况下,当使用RMAN执行备份操作时,只会生成一个备份片副本,为了生成多个备份片副本,可以配置多重备份。示例如下:
     RMAN>CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE TO 3;

   5.配置免除表空间
     默认情况下,当执行BACKUP DATABASE命令时,会备份除了临时表空间外的所有表空间。如果某些表空间只是用于存放测试数据或者表空间变化很少,那么可以在备份数据库时
     免除该表空间。
     RMAN>CONFIGURE EXCLUDE FOR TABLESPACE USER03;

   6.配置备份冗余策略
     RMAN>CONFIGURE RETENTION POLICY TO REDUNDANCY 2;

   7.配置辅助例程的数据文件名。
     当使用RMAN执行表空间时间点恢复(TSPITR)或复制数据库时,可能需要设置辅助例程的数据文件名。
     RMAN>CONFIGURE AUXNAME FOR DATAFILE 2 TO 'D:\AUXI\DF_2.DBF'

   8.配置快照控制文件名
     RMAN>CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:\ORACLE\ORA10\snfcDEMO.ORA';

   9.显示RMAN配置

     (1)显示所有RMAN配置
        RMAN>SHOW ALL;

     (2)显示默认设备类型
        RMAN>SHOW DEFAULT DEVICE TYPE;

     (3) 显示自动通道配置
         RMAN>SHOW CHANNEL FOR DEVICE TYPE DISK/sbt;

     (4) 显示备份冗余策略
         RMAN>SHOW RETENTION POLICY;
    
     (5) 显示备份优化
         RMAN>SHOW BACKUP OPTIMIZATION

     (6) 显示快照控制文件
         RMAN>SHOW SNAPSHOT CONTROLFILE NAME;

     (7) 显示备份集最大尺寸
         RMAN>SHOW MAXSETSIZE;

     (8) 显示多重备份
         RMAN>SHOW DATAFILE BACKUP COPIES

         RMAN>SHOW ARCHIVELOG BACKUP COPIES;

     (9) 清除RMAN配置(恢复默认)。示例如下:
         RMAN>CONFIGURE RETENTION POLICY CLEAR


二、RMAN备份

   1、命名格式匹配符

    %c:当生成多重备份时,用于指定备份片的副本
    %d:用于指定数据库名
    %e:用于指定归档日志序列号
    %p:用于指定在备份集内备份片的编号
    %s:用于指定备份集编号
    %N:用于指定表空间的名称
    %f:用语指定绝对文件号

    2、完全数据库备份集
    (1)一致性备份。一致性备份是指在关闭了数据库之后备份所有数据文件和控制文件的方法,既可用于归档模式和非归档模式。
            RMAN>SHUTDOWN IMMEDIATE
            RMAN>STARTUP MOUNT
            RMAN>BACKUP DATABASE FORMAT='D:\BACKUP\%d_%s.dbf';
            RMAN>SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT'
   
        (2)非一致性备份
           RMAN>BACKUP DATABASE FORMAT='D:\BACKUP\%d_%s.dbf';
           RMAN>SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT'
  
        (3)免除表空间
           RMAN>CONFIGURE EXCLUDE FOR TABLESPACE USER03;
           RMAN>BACKUP DATABASE FORMAT='D:\BACKUP\%d_%s.dbf';
           RMAN>SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT'

    3、表空间备份集
        备份表空间只适用于归档模式,并且要求数据库必须处于OPEN状态。
           RMAN>BACKUP TABLESPACE USER03 FORMAT='D:\BACKUP\%N_%f_%s.dbf';

    4、数据文件备份集
       备份数据文件既可以在OPEN状态下,也可以在MOUNT状态下。
       RMAN>BACKUP DATAFILE 5 FORMAT='D:\BACKUP\%N_%f_%s.dbf';
   
    5、控制文件备份集
       RMAN>BACKUP CURRENT CONTROLFILE FORMAT='D:\BACKUP\%d_%s.dbf'
       注意:当备份数据文件1时,会自动备份控制文件。当备份其他数据文件时,通过指定 INCLUDE CURRENT CONTROLFILE 选项可以同时备份控制文件,如:
       RMAN>BACKUP DATAFILE 5 FORMAT='D:\BACKUP\%d_%s.dbf' include current controlfile;

    6、SPFILE备份集
       RMAN>BACKUP SPFILE FORMAT='D:\BACKUP\%d_%s.par';

    7、归档日志备份集
       RMAN>BACKUP FORMAT='D:\BACKUP\%d_%s.arc' ARCHIVELOG FROM TIME='SYSDATE-1' UNTIL TIME='SYSDATE';

    8、并行化备份集
       RMAN>CONFIGURE DEVICE TYPE DISK PARALLELISM 3;
       RMAN>BACKUP DATABASE FORMAT='D:\BACKUP\%d_%s.dbf';
       RMAN>CONFIGURE DEVICE TYPE DISK CLEAR;

    9、建立多重备份
      RMAN>BACKUP COPIES 3 TABLESPACE USERS FORMAT='D:\BACKUP\%N_%s.dbf','E:\BACKUP\%N_%s.DBF','F:\BACKUP\%N_%s.DBF'

    10、备份备份集
       RMAN>BACKUP BACKUPSET 32 FORMAT='D:\BACKUP\%d_%s.bak';

    11、建立多个备份片
       当建立备份集时,默认情况下,每个备份集只包含一个备份片。如果磁带存储空间不组以存放一个备份集的单个备份片文件,则需要将备份集划分为几个小的备份
       片文件,并且备份片的最大尺寸应该小于磁带尺寸。注意,当建立多个备份片时,必须要指定%p匹配符。
       RMAN>CONFIGURE CHANNEL DEVICE TYPE sbt MAXPIECESIZE 4G;
       RMAN>BACKUP DEVICE TYPE sbt FORMAT '%d_%s_%p.dbf' database;

    12、建立压缩备份集
       RMAN>BACKUP AS COMPRESSED BACKUPSET TABLESPACE USERS FORMAT='D:\BACKUP\%d_%s.dbf';

    13、备份数据文件和归档日志
       RMAN>BACKUP FORMAT 'D:\BACKUP\%d_%s.bak' tablespace user01 plus archivelog;

    14、指定备份集标记
       RMAN>BACKUP FORMAT 'D:\BACKUP\%d_%s.bak' tablespace users tag='users';

    15、建立映像副本
       (1)建立数据文件映像副本
          RMAN>BACKUP AS COPY FORMAT='D:\BACKUP\DF_5.DBF' DATAFILE 5;
          RMAN>COPY DATAFILE 5 TO 'D:\BACKUP\DF_5.DBF'

       (2)建立控制文件映像副本
          RMAN>BACKUP AS COPY FORMAT='D:\BACKUP\DEMO.CTL' CURRENT CONTROLFILE;
          RMAN>COPY CURRENT CONTROLFILE TO 'D:\BACKUP\DEMO.CTL';

       (3)建立归档日志映像副本
          RMAN>BACKUP AS COPY FORMAT='D:\BACKUP\ARCHIVE\ARC20.LOG' ARCHIVELOG SEQUENCE 20;
          RMAN>COPY ARCHIVELOG 'D:\DEMO\ARCHIVE\ARC00020_0538067512.001' TO 'D:\BACKUP\ARCHIVE\ARC20.LOG'

       (4)并行化建立映像副本
          RMAN>CONFIGURE DEVICE TYPE DISK PARALLELISM 3;
          RMAN>BACKUP AS COPY FORMAT='D:\BACKUP\DF_%f.DBF' DATAFILE 5,5,7;
          RMAN>CONFIGURE DEVICE TYPE DISK CLEAR;

       (5)指定映像副本标记
          RMAN>BACKUP AS COPY FORMAT='D:\BACKUP\DF_%f.DBF' DATAFILE 5 TAG=DF_5;
          RMAN>COPY DATAFILE 5 TO 'D:\BACKUP\DF_%f.DBF' TAG=DF_5;
       

    16、建立增量备份和累积备份
       (1)建立增量备份
          RMAN>BACKUP INCREMENTAL LEVEL 0 FORMAT='D:\BACKUP\%d_%s.dbf' tablespace users;

   RMAN>BACKUP INCREMENTAL LEVEL 1 FORMAT='D:\BACKUP\%d_%s.dbf' tablespace users;

   RMAN>BACKUP INCREMENTAL LEVEL 2 FORMAT='D:\BACKUP\%d_%s.dbf' tablespace users;

       (2)建立累积备份
          RMAN>BACKUP INCREMENTAL LEVEL 0 FORMAT='D:\BACKUP\%d_%s.dbf' tablespace users;

   RMAN>BACKUP INCREMENTAL LEVEL 2 FORMAT='D:\BACKUP\%d_%s.dbf' tablespace users;

          RMAN>BACKUP INCREMENTAL LEVEL 2 cumulative FORMAT='D:\BACKUP\%d_%s.dbf' tablespace users;

          RMAN>BACKUP INCREMENTAL LEVEL 1 FORMAT='D:\BACKUP\%d_%s.dbf' tablespace users;

    17、显示备份信息
        (1)V$ARCHIVED_LOG.该动态性能视图用于显示所有归档日志映像副本的信息。
          SQL>select sequence#,name,first_change# from v$archived_log where status='A'

        (2)V$BACKUP_DATAFILE 该动态视图用于显示控制文件和数据文件的备份信息。通过在动态性能视图V$BACKUP_DATAFILE,V$BACKUP_PIECE之间进行连接查询,
           可以显示特定数据文件的备份片文件信息。
           SQL>SELECT A.FILE#,B.HANDLE,A.BLOCKS*A.BLOCK_SIZE BYTE FROM V$BACKUP_DATAFILE A,V$BACKUP_PIECE B WHERE A.SET_STAMP=B.SET_STAMP AND B.STATUS='A';
       
        (3) V$BACKUP_REDOLOG 该动态性能视图用于显示归档日志备份集的信息,每个归档日志备份集可以包含一个或多个归档日志。通过在V$BACKUP_PIECE 和 V$BACKUP_REDOLOG
            之间进行连接查询,可以显示备份片文件所包含的归档日志备份信息。
            SQL>SELECT DISTINCT A.HANDLE,B.SEQUENCE#,B.FIRST_CHANGE#,B.BLOCKS FROM V$BACKUP_PIECE A,V$BACKUP_REDOLOG B WHERE A.SET_STAMP=B.SET_STAMP AND A.STATUS='A'

        (4)V$BACKUP_SET,V$BACKUP_PIECE, 前者用于显示备份集的详细信息,后者用于显示备份片的详细信息,通过在二者之间进行连接查询,可以显示备份集所对应的备份片的信息。
            SQL>SELECT B.HANDLE,A.BACKUP_TYPE,A.PIECES,A.ELAPSED_SECONDS FROM V$BACKUP_SET A,V$BACKUP_PIECE B WHERE A.SET_STAMP=B.SET_STAMP AND B.STATUS='A'


             注意:handle用于表示备份片文件名,backup_type用于表示备份片类型(D: 数据文件完备份,I:数据文件增量备份, L:归档日志备份),pieces用于表示备份片个数,
                  elapsed_seconds用于表示备份的总开销时间。

        (5)V$BACKUP_CORRUPTION 用于显示在执行BACKUP命令时所检测到的损坏数据块信息。
           SQL>SELECT FILE#,BLOCK#,BLOCKS,MARKED_CORRUPT FROM V$BACKUP_CORRUPTION;

(6)V$COPY_CORRUPTION 用于显示在执行COPY命令时所检测到的损坏数据块信息。
    SQL>SELECT FILE#,BLOCK#,BLOCKS,MARKED_CORRUPT FROM V$COPY_CORRUPTION;


三、RMAN恢复
    1、RMAN转储命令
    
     (1) RESTORE DATABASE 用于转储数据库的所有文件,当数据库的所有数据文件全部出现介质失败,或者执行不完全恢复时,应该使用该命令。
         注意,该命令只能在MOUNT状态下使用。
  
     (2) RESTORE TABLESPACE 用于转储特定表空间的数据文件。如果某个表空间的所有数据文件全部出现介质失败,并且数据库处于OPEN状态,那么应该使用该命令
         转储其所有数据文件。注意,该命令只能在OPEN状态下使用。

     (3)RESTORE DATAFILE。用于转储特定数据文件,该命令可以在MOUNT 和 OPEN 状态下使用

     (4)RESTORE CONTROLFILE 用于转储控制文件,当执行基于控制文件的不完全恢复或者将数据库恢复到先前副本状态时,必须转储控制文件。
        注意,该命令只能在NOMOUNT状态下使用。
    
     (5)RESTORE ARCHIVELOG 用于转储归档日志。当执行完全恢复和不完全恢复时,都需要应用归档日志。如果归档日志出现介质失败,或者归档日志映像副本不存在,
        则需要使用该命令转储归档日志,该命令可在 MOUNT 和 OPEN状态下使用。

     (6)RESTORE SPFILE 用语转储服务器参数文件,只能在 NOMOUNT 状态下使用。

     2、RMAN恢复命令
    
     (1)RECOVER DATABASE 用于恢复数据库所有文件,只能在MOUNT状态下使用。

     (2)RECOVER TABLESPACE 用于恢复特定表空间的所有数据文件,只能在 OPEN 状态下使用。

     (3)RECOVER DATAFILE 用于恢复特定数据文件,可在OPEN AND MOUNT状态下使用。


     3、RMAN 完全恢复
     (1) 恢复数据库
         a)所有数据文件丢失

          RMAN> STARTUP FORCE MOUNT
          RMAN>RUN{
          2>RESTORE DATABASE;
          3>RECOVER DATABASE;
          4>SQL 'ALTER DATABASE OPEN';
          5>}

        b) 数据文件所在磁盘出现硬件故障
          如果数据文件所在磁盘出现硬件故障,数据文件将不能转储到原位置,为了恢复数据库,必须将数据文件转储到其他位置。在执行RESTORE DATABASE之前,通过
          执行SET NEWNAME 命令可以为数据文件指定新的位置;在执行RESTORE DATABASE 命令之后,通过执行 SWITCH DATAFILE命令可以改变控制文件所记载的数据文件
          位置和名称,在通过执行RECOVER DATABASE命令可以应用归档日志。
          RMAN>RUN{
          2>STARTUP FORCE MOUNT;
          3>SET NEWNAME FOR DATAFILE 1 TO 'E:\DEMO\SYSTEM01.DBF';
          4>SET NEWNAME FOR DATAFILE 2 TO 'E:\DEMO\UNDOTBS01.DBF';
          5>SET NEWNAME FOR DATAFILE 3 TO 'E:\DEMO\SYSAUX01.DBF';
          6>SET NEWNAME FOR DATAFILE 4 TO 'E:\DEMO\USERS01.DBF';
   7>RESTORE DATABASE;
          8>SWITCH DATAFILE ALL;
          9>RECOVER DATABASE;
          10>SQL 'ALTER DATABASE OPEN';
   11>}
       
          在恢复并打开数据库后,通过REPORT SCHEMA 可以查看数据库新的物理方案
          RMAN>REPORT SCHEMA

    (2) 恢复SYSTEM表空间的数据文件
        
          a) SYSTEM 表空间的数据文件被误删除
             RMAN>RUN{
             2>STARTUP FORCE MOUNT;
             3>RESTORE DATAFILE 1;
             4>RECOVER DATAFILE 1;
             5>SQL 'ALTER DATABASE OPEN';
             6>}

           b)SYSTEM 表空间数据文件所在磁盘出现故障
             RMAN>RUN{
             2>STARTUP FORCE MOUNT;
             3>SET NEWNAME FOR DATAFILE 1 TO 'D:\DEMO\SYSTEM01.DBF';
             4>RESTORE DATAFILE 1;
             5>SWITCH DATAFILE 1;
             6>RECOVER DATAFILE 1;
             7>SQL 'ALTER DATABASE OPEN';
             8>}

     (3)在OPEN状态下恢复关闭后意外丢失的数据文件

           a)数据文件被误删除
             RMAN>RUN{
             2>STARTUP FORCE MOUNT;
             3>SQL 'ALTER DATABASE DATAFILE 4 OFFLINE';
             4>SQL 'ALTER DATABASE OPEN';
             5>RESTORE DATAFILE 4;
             6>RECOVER DATAFILE 4;
             7>SQL 'ALTER DATABASE DATAFILE 4 ONLINE';
             8>}

     b)数据文件所在磁盘出现损坏
             RMAN>RUN{
             2>STARTUP FORCE MOUNT;
             3>SQL 'ALTER DATABASE DATAFILE 4 OFFLINE';
             4>SQL 'ALTER DATABASE OPEN';
             5>SET NEWNAME FOR DATAFILE 4 TO 'D:\DEMO\USERS01.DBF';
             6>RESTORE DATAFILE 4;
             7>SWITCH DATAFILE 4;
             8>RECOVER DATAFILE 4;
             9>SQL 'ALTER DATABASE DATAFILE 4 ONLINE';
      10>}

     (4)在OPEN状态下恢复打开时意外丢失的数据文件
             当数据库处于OPEN状态时,如果SYSTEM表空间的数据文件出现介质失败,那么会立即终止例程,此时需要在MOUNT状态下恢复其数据文件,如果在OPEN状态
             下其他数据文件出现介质失败,则只有介质失败所涉及到的数据文件不能访问,而不影响其他数据文件。

             a)数据文件被误删除
              RMAN>RUN{
              2>SQL 'ALTER DATABASE DATAFILE 4 OFFLINE';
              3>RESTORE DATAFILE 4;
              4>RECOVER DATAFILE 4;
              5>SQL 'ALTER DATABASE DATAFILE 4 ONLINE';
              6>}
  
             b)数据文件所在磁盘出现故障
              RMAN>RUN{
              2>SQL 'ALTER DATABASE DATAFILE 4 OFFLINE';
              3>set newname for datafile 4 to 'd:\demo\users01.dbf';
              4>RESTORE DATAFILE 4;
              5>SWITCH DATAFILE 4
              6>RECOVER DATAFILE 4;
              7>SQL 'ALTER DATABASE DATAFILE 4 ONLINE';
              8>}

       (5)在OPEN状态下恢复未备份的数据文件
             前提:从建立数据文件到目前为止的所有归档日志必须存在。
      
             a)数据文件被误删除
               从10G开始,如果数据文件备份不存在,转储数据文件时会自动建立数据文件。
               RMAN>RUN{
               2>STARTUP FORCE MOUNT;
               3>SQL 'ALTER DATABASE DATAFILE 7 OFFLINE';
               4>SQL 'ALTER DATABASE OPEN';
               5>RESTORE DATAFILE 7;
               6>RECOVER DATAFILE 7;
               7>SQL 'ALTER DATABASE DATAFILE 7 ONLINE';
               8>}

              b)数据文件所在磁盘出现故障
               RMAN>RUN{
               2>STARTUP FORCE MOUNT;
               3>SQL 'ALTER DATABASE DATAFILE 7 OFFLINE';
               4>SQL 'ALTER DATABASE OPEN';
               5>SET NEWNAME FOR DATAFILE 7 TO 'D:\DEMO\USERS04.DBF';
               6>RESTORE DATAFILE 7;
               7>SWITCH DATAFILE 7;
               8>RECOVER DATAFILE 7;
               9>SQL 'ALTER DATABASE DATAFILE 7 ONLINE';
               10>}

       (6)恢复表空间

              a)表空间全部数据文件被误删除
               RMAN>RUN{
               2>SQL 'ALTER TABLESPACE USERS OFFLINE FOR RECOVER';
               3>RESTORE TABLESPACE USERS;
               4>RECOVER TABLESPACE USERS;
               5>SQL 'ALTER TABLESPACE USERS ONLINE';
               6>}

               b)表空间数据文件所在磁盘出现故障
        RMAN>RUN{
               2>SQL 'ALTER TABLESPACE USERS OFFLINE FOR RECOVER';
               3>SET NEWNAME FOR DATAFILE 4 TO 'D:\DEMO\USERS01.DBF';
               4>RESTORE TABLESPACE USERS;
               5>SWITCH DATAFILE 4;
               6>RECOVER TABLESPACE USERS;
               7>SQL 'ALTER TABLESPACE USERS ONLINE';
               8>}

       (7) 数据块介质恢复
               从9i开始,使用BLOCKRECOVER命令可以恢复损坏的数据块,示例如下:
               RMAN>BLOCKRECOVER DEVICE TYPE DISK
               2>DATAFILE 5 BLOCK 21,48,128;

4、RMAN 不完全恢复
     RMAN不完全恢复只适用于归档模式,并且只能在MOUNT状态下完成。

     (1)基于时间恢复
        RMAN>RUN{
        2>STARTUP FORCE MOUNT;
        3>SET UNTIL TIME='2007-08-24 17:23:22';
        4>RESTORE DATABASE;
        5>RECOVER DATABASE;
        6>SQL 'ALTER DATABASE OPEN RESETLOGS';
        7>}

       用RESETLOGS选项打开数据库后,会复位日志序列号,建议删除早期备份,并重新备份数据库,示例如下:
       RMAN>RUN{
       2>DELETE NOPROMPT BACKUP;
       3>DELETE NOPROMPT COPY;
       4>BACKUP DATABASE FORMAT='D:\BACKUP\%d_%s.bak';
       5>sql 'alter system archive log current';
       6>}

     (2)基于SCN恢复
        RMAN>RUN{
        2>STARTUP FORCE MOUNT;
        3>SET UNTIL SCN=511402;
        4>RESTORE DATABASE;
        5>RECOVER DATABASE;
        6>SQL 'ALTER DATABASE OPEN RESETLOGS';
        7>}

     (3)基于日志序列号恢复
RMAN>RUN{
        2>STARTUP FORCE MOUNT;
        3>SET UNTIL SEQUENCE=21;
        4>RESTORE DATABASE;
        5>RECOVER DATABASE;
        6>SQL 'ALTER DATABASE OPEN RESETLOGS';
        7>}

     (4)基于备份控制文件恢复
        c:\>set nls_date_format=yyyy-mm-dd hh24:mi:ss
        c:\>rman target sys/oracle@demo nocatalog
        RMAN>STARTUP FORCE NOMOUNT
        RMAN>SET DBID=3282656886;
        RMAN>RESTORE CONTROLFILE FROM AUTOBACKUP MAXSEQ 6;
        RMAN>ALTER DATABASE MOUNT;
        RMAN>RUN{
        2>SET UNTIL TIME='2007-08-25 14:25:02';
        3>RESTORE DATABASE;
        4>RECOVER DATABASE;
        5>SQL 'ALTER DATABASE OPEN RESETLOGS';
        6>}

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14876437/viewspace-555057/,如需转载,请注明出处,否则将追究法律责任。

下一篇: linux expdp&expdp
请登录后发表评论 登录
全部评论

注册时间:2009-02-16

  • 博文量
    91
  • 访问量
    43669