Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3303416
  • 博文数量: 631
  • 博客积分: 10716
  • 博客等级: 上将
  • 技术积分: 8397
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-01 22:35
文章分类

全部博文(631)

文章存档

2020年(2)

2019年(22)

2018年(4)

2017年(37)

2016年(22)

2015年(1)

2013年(12)

2012年(20)

2011年(19)

2010年(20)

2009年(282)

2008年(190)

分类: Oracle

2008-07-31 17:10:29

一、REPORT
1
、报告目标数据库的物理结构

    RMAN>REPORT SCHEMA

2、报告需要备份的数据文件

    在执行备份之前,常常需要取得需要备份的数据文件信息,通过执行REPORT NEED BACKUP 命令,可以列出需要备份的数据文件。当使用REPORT NEED BACKUP命令时,可以带
   
INCREMENTALDAYSREDUNDANCYRECOVERY WINDOW 四个选项。
   
    (1)
报告需要转储的增量备份超出特定个数的数据文件
      
当恢复数据文件时,需要转储数据文件备份,然后应用归档日志执行恢复。如果备份数据文件采用了增量备份和累积备份策略,那么在转储数据文件时依次转储
       0
12..级别的增量备份,转储的数据文件备份越多,恢复时间越长,下面以报告恢复数据文件需要转储的增量备份个数超过3次的数据文件为例:
       RMAN>REPORT NEED BACKUP INCREMENTAL 3

       其中 file 用于标识数据文件的编号,Incrementals用于标识需要转储的备份文件个数,Name用于标识数据文件的名称,如果某个文件出现转储的次数大于3次,
      
应该在该数据文件上执行完全备份或增量0级备份。

    (2)报告特定天数未备份的数据文件
      
当恢复数据文件时,在转储了所需的数据文件备份之后,会应用从备份点开始的所有归档日志。需要应用的归档日志越多,恢复时间越长,为了减少恢复时间,应该制定
      
备份数据文件的时间周期。

       USERS表空间上3天未备份的数据文件
       RMAN>REPORT NEED BACKUP DAYS 3 TABLESPACE USERS;

       数据库内10天以上未备份的数据文件
       REPORT NEED BACKUP DAYS 10

   
    (3)
报告低于特定备份次数的数据文件
      
恢复数据文件时,需要转储数据文件备份。当数据文件出现介质失败,并且数据文件备份也出现问题时,会导致数据文件无法恢复。在制定备份册落时,
      
为了防止数据文件备份出现问题,应该为数据文件保留多个备份,但某些文件的备份次数过少时,需要增加备份数量。
      RMAN>REPORT NEED BACKUP REDUNDANCY 2 DATABASE;

    (4)报告在恢复时间窗口内未备份的数据文件
      
当恢复数据文件时,在转储了所需的数据文件备份之后,会应用从备份点开始的所有归档日志。需要应用的归档日志越多,恢复时间越长。通过使用
      
恢复时间窗口,可以将恢复操作需要应用的归档日志控制在特定时间范围内。下面以报告超过恢复窗口6天的未备份数据文件为例,说明使用DAYS选项的方法:
       RMAN>REPORT NEED BACKUP RECOVERY WINDOW OF 6 DAYS

       DAYS 用于标识恢复数据文件需要应用几天前的归档日志。

3、报告陈旧备份
    
当使用RMAN执行恢复操作时,RMAN会自动转储最近的备份文件,然后应用该备份文件之后的归档日志。如果在特定数据文件上进行了多次备份,那么可以删除
    
早期备份,通过使用REPORT OBSOLETE命令,可以报告陈旧备份。下例报告备份次数超过2次的陈旧备份:
      RMAN>REPORT OBSOLETE REDUNDANCY 2;

4、报告不可恢复的数据文件
    
当使用NOLOGGING选项装载了数据库之后,因为数据变化没有被记录到归档日志中,所以会导致过去的数据文件备份不能恢复当前数据文件。为防止数据文件不能
    
恢复,应该备份该数据文件,通过如下语句,可以查看数据库所有不可恢复的数据文件:
     RMAN>REPORT UNRECOVERABLE;


二、LIST

   1、列出数据文件备份集
      RMAN>LIST BACKUP OF TABLESPACE USER01;

   2、列出控制文件备份集
      RMAN>LIST BACKUP OF CONTROLFILE;
  
   3
、列出归档日志备份集
      RMAN>LIST BACKUP OF ARCHIVELOG ALL;

   4、列出SPFILE备份集
      RMAN>LIST BACKUP OF SPFILE;

   5、列出数据文件映像副本
     
可用LIST COPY OF DATABASE列出所有数据文件的映像副本;用LIST COPY OF TABLESPACE 列出特定表空间数据文件的映像副本;用 LIST COPY OF DATAFILE列出特定
      
数据文件的映像副本。
    
       RMAN>LIST COPY OF DATAFILE 5

   6、列出控制文件映像副本
       RMAN>LIST COPY OF CONTROLFILE
  
   7
、列出归档日志映像副本。
       RMAN>LIST COPY OF ARCHIVELOG ALL;

   8、列出数据库副本
     
每次使用RESETLOGS选项打开数据库之后都会生成一个新的数据库副本。
       RMAN>LIST INCARNATION OF DATABASE;


三、CROSSCHECK
  
该命令用于核对磁盘和磁带上的备份文件,以确保RMAN资料库与备份文件保持同步。该命令只会检查RMAN资料库所记载的备份文件。当执行CROSSCHECK命令时,如果资料库

  
记录不匹配于备份文件的物理状态,那么该命令会更新资料库记录的状态信息。当使用CROSSCHECK命令核对备份文件之后,备份文件的状态会包括AVALIABLEUNAVALIABLEEXPIRED 三种,
  
如果备份文件处于EXPIRED状态,则说明物理文件已经被手工删除或者损坏。注意,如果备份文件处于EXPIRED状态,应该使用DELETE命令删除该备份文件。
  
   1
、核对所有备份集
      RMAN>CROSSCHECK BACKUP;

   2、核对所有数据文件的备份集
      RMAN>CROSSCHECK BACKUP OF DATABASE;

   3、核对特定表空间的备份集
      RMAN>CROSSCHECK BACKUP OF TABLESPACE SYSTEM;

   4、核对特定数据文件的备份集
      RMAN>CROSSCHECK BACKUP OF DATAFILE 4;

   5、核对控制文件的备份集
      RMAN>CROSSCHECK BACKUP OF CONTROLFILE;

   6、核对SPFILE的备份集
      RMAN>CROSSCHECK BACKUP OF SPFILE;
  
   7
、核对归档日志的备份集
      RMAN>CROSSCHECK BACKUP OF ARCHIVELOG SEQUENCE 3;

   8、核对所有映像副本
      RMAN>CROSSCHECK COPY;

   9、核对所有数据文件的映像副本
      RMAN>CROSSCHECK COPY OF DATABASE;

   10、核对特定表空间的映像副本
      RMAN>CROSSCHECK COPY OF TABLESPACE USERS;

   11、核对特定数据文件的映像副本
       RMAN>CROSSCHECK COPY OF DATAFILE 4;

   12、核对控制文件的映像副本
        RMAN>CROSSCHECK COPY OF CONTROLFILE;

   13、核对归档日志的映像副本
       RMAN>CROSSCHECK COPY OF ARCHIVELOG SEQUENCE 4;


四、DELETE

    该命令用于删除RMAN备份记录及相应的物理文件

    1、删除陈旧备份
       RMAN>DELETE OBSOLETE;

    2、删除 EXPIRED 备份集
     
当使用OS命令删除了备份集对应的备份片文件后,如果执行CROSSCHECK命令核对备份集,那么会将该备份集标记为EXPIRED状态。
       RMAN>DELETE NOPROMPT EXPIRED BACKUP;

    3、删除EXPIRED副本
       RMAN>DELETE NOPROMPT EXPIRED COPY;      


    4
、删除特定备份集
      RMAN>DELETE NOPROMPT BACKUPSET 19;

    5、删除特定备份片
      RMAN>DELETE NOPROMPT BACKUPPIECE 'D:\BACKUP\DEMO_18.BAK';

    6、删除所有备份集
      RMAN>DELETE NOPROMPT BACKUP;

    7、删除特定映像副本
       RMAN>DELETE NOPROMPT DATAFILECOPY 'D:\BACKUP\DEM0_19.BAK';

    8、删除所有映像副本
       RMAN>DELETE NOPROMPT COPY;

    9、在备份后删除输入对象
      
当使用BACKUP命令备份归档日志或备份集时,在备份完成之后可以删除原有输入对象,示例如下:
       RMAN>BACKUP ARCHIVELOG ALL DELETE INPUT;
       RMAN>BACKUP BACKUPSET 22 FORMAT='D:\BACKUP\%u.BAK' DELETE INPUT;

五、CHANGE

   1、改变备份集状态
     
可用CHANGE BACKUPSET .. UNAVAILABLE/AVAILABLE 来改变一个备份集的状态。

      RMAN>CHANGE BACKUPSET 22 UNAVAILABLE

   2、改变映像副本状态
     
数据文件:CHANGE DATAFILECOPY .. AVAILABLE/UNAVAILABLE
     
控制文件:
CHANGE CONTROLFILECOPY .. AVAILABLE/UNAVAILABLE
     
归档日志:CHANGE ARCHIVELOG .. AVAILABLE/UNAVAILABLE

      例如:
       RMAN>CHANGE DATAFILECOPY 'D:\BACKUP\DEMO_37.BAK' UNAVAILABLE;

   3、建立长期备份
     
长期备份是指被长期保留的备份文件,使用长期备份的目的是为了可以将数据库恢复到过去的特定时间点。当社顶了长期备份之后,RMAN会从设备冗余策略中
     
免除该备份文件,也就是说,长期备份文件不会被标记为陈旧备份。
     
命令:CHANGE .. KEEP/NOKEEP

      (1)使备份集156永久保留
         RMAN>CHANGE BACKUPSET 156 KEEP FOREVER LOGS;
      (2)
使备份集198保留60
         RMAN>CHANGE BACKUPSET 198 KEEP UNTIL TIME 'SYSDATE+60' LOGS;
      (3)
免除备份集156的保留期限
         RMAN>CHANGE BACKUPSET 156 NOKEEP

阅读(1489) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~