备份恢复7——rman维护命令

Rmanformat格式中的%
%c 备份片的拷贝数 
%d 数据库名称 
%D 位于该月中的第几天 (DD) 
%M 位于该年中的第几月 (MM) 
%F 一个基于DBID唯一的名称,这个格式的形式为c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII为该数据库的DBID,YYYYMMDD为
日期,QQ是一个1-256的序列 
%n 数据库名称,向右填补到最大八个字符 
%u 一个八个字符的名称代表备份集与创建时间 
%p 该备份集中的备份片号,从1开始到创建的文件数
%U 一个唯一的文件名,代表%u_%p_%c 
%s 备份集的号 
%t 备份集时间戳 
%T 年月日格式(YYYYMMDD)

当使用rman时,不仅需要执行备份,恢复和转储操作,dba还需要经常检查某些数据文件是否需要重新备份,需要列出已经存在的备份文件,需要经常核对备份集和映像副本是否处于可用状态,需要删除过期的备份集和映像副本等。


1、report命令

report常用命令总结备忘


report用于判断数据库当前可恢复状态、以及数据库已有备份的信息。
最常使用的是report obsolete; report schema;

report {device, need, obsolete, schema, unrecoverable}

report schema;
report obsolete;
report unrecoverable;
report need backup;
report need backup days=3; --报告最近3天内没有备份的文件
report need backup redundancy=3; --报告冗余次数小于3的数据文件。
report need backup recovery window of 2 days;
    2.1.report schema;
    报告数据库模式


    22.report obsolete;
    报告已丢弃的备份集(配置了保留策略)。


    2.3.report unrecoverable;
    报告当前数据库中不可恢复的数据文件(即没有这个数据文件的备份、或者该数据文件的备份已经过期,比如某个数据文件是nologging模式插入的数据)


    2.4.report need backup;
    报告需要备份的数据文件(根据条件不同)
        report need backup days=3;
        --最近三天没有备份的数据文件(如果出问题的话,这些数据文件将需要最近3天的归档日志才能恢复)


        report need backup incremental=3;
        --需要多少个增量备份文件才能恢复的数据文件。(如果出问题,这些数据文件将需要3个增量备份才能恢复)


        report need backup redundancy=3;
        --报告出冗余次数小于3的数据文件
        --例如数据文件中包含2个数据文件system01.dbf和users01.dbf.
        --在3次或都3次以上备份中都包含system01.dbf这个数据文件,而users01.dbf则小于3次
        --那么,报告出来的数据文件就是users01.dbf
        --即,报告出数据库中冗余次数小于 n 的数据文件


        report need backup recovery window of 2 days;
        --报告出恢复需要2天归档日志的数据文件


If you disable the retention policy using CONFIGURE RETENTION POLICY TO NONE, then REPORT NEED BACKUP returns an error message, because without a retention policy, RMAN cannot determine which files must be backed up


用于详细分析rman资料库信息,并生成针对跟踪问题的报告。通过使用report命令,

可以报告目标数据库的物理结构,

可以报告需要备份的数据文件,

可以报告陈旧的备份文件,

可以报告不可恢复的数据文件等信息。

■ Which files need a backup?
■ Which files have had unrecoverable operations performed on them?
■ Which backups are obsolete and can be deleted?
■ What was the physical schema of the target database or a database in the Data Guard environment at some previous time?
■ Which files have not been backed up recently?

下面一一来看:

报告目标数据库的物理结构:一般在rman备之前,dba经常需要取得数据库所包含的表空间及数据文件信息,通过report schema命令,可以列出目标数据库的表空间和数据文件信息。示例:

RMAN> report schema;

Report of database schema for database with db_unique_name TEST


List of Permanent Datafiles
===========================
File Size(MB) Tablespace           RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
1    710      SYSTEM               ***     /u01/app/oracle/oradata/test/system01.dbf
2    550      SYSAUX               ***     /u01/app/oracle/oradata/test/sysaux01.dbf
3    70       UNDOTBS1             ***     /u01/app/oracle/oradata/test/undotbs01.dbf
4    5        USERS                ***     /u01/app/oracle/oradata/test/users01.dbf
5    200      TEST1                ***     /u01/app/oracle/oradata/test/test01.dbf
6    200      TEST2                ***     /u01/app/oracle/oradata/test/test02.dbf
7    200      TEST1                ***     /u01/app/oracle/oradata/test/test011.dbf


List of Temporary Files
=======================
File Size(MB) Tablespace           Maxsize(MB) Tempfile Name
---- -------- -------------------- ----------- --------------------
1    20       TEMP                 32767       /u01/app/oracle/oradata/test/temp01.dbf

报告需要备份的数据文件:在使用rman执行操作之前,dba需要取得需要备份的数据文件信息,同过执行report need backup 命令可以列出需要备份的数据文件。当使用report need backup命令时,可以带有incremental、days、redundancy、recovery window四个选项。


示例一:报告需要转储的增量备份超出特定个数的数据文件。

在恢复数据文件时,需要转储数据文件备份,然后应用归档日志执行恢复。如果备份数据文件采用了增量备份和累积备份策略。那么在转储数据文件时一次转储0级增量备份,1级增量备份,2级增量备份等。转储的数据文件备份越多,恢复时间越长。通过incremental选项可以根据需要转储的增量备份个数确定需要备份的数据文件。示例:

RMAN > REPORT NEED BACKUP INCREMENTAL n;   ——report of files that need more than 3 incrementals during recovery .


file标识数据文件编号,incremental用于标识需要转储的备份文件个数,name用于标识数据文件的名称。因为回复数据文件users01.dbf需要转储4个增量备份,所以为了将回复数据文件需要转储的增量备份控制在2次以内。应该在该数据文件上执行完全备份或增量0级备份。

示例二:报告特定天数未备份的数据文件。

为了减少恢复时间,应该制定备份数据文件的周期,通过使用report need backup命令的days选项,可以报告在特定天数未备份的数据文件。下面报告在users表空间上3天未备份的数据文件。

RMAN> report need backup days 3 tablespace users;

file标识数据文件编号,days标识数据文件需要应用几天的归档日志。name用于标识数据文件名。因为回复数据文件users01.dbf需要8天得归档日志,所以为了将恢复数据文件需要应用的归档日志控制在3天以内,应该在该数据文件上执行备份。

示例三:报告低于特定备份次数的数据文件。

通过report need backup 。。redundancy选项,根据数据文件备份次数,确定是否需要备份数据文件,下面报告备份文件低于2份的所有数据文件为例。

REPORT NEED BACKUP REDUNDANCY n

RMAN > report need backup redundancy 2 database;


Report of files with less than 2 redundant backups
File #bkps Name
---- ----- -----------------------------------------------------
1    1     /u01/app/oracle/oradata/test/system01.dbf
2    1     /u01/app/oracle/oradata/test/sysaux01.dbf
3    1     /u01/app/oracle/oradata/test/undotbs01.dbf
4    1     /u01/app/oracle/oradata/test/users01.dbf
5    1     /u01/app/oracle/oradata/test/test01.dbf
6    1     /u01/app/oracle/oradata/test/test02.dbf
7    1     /u01/app/oracle/oradata/test/test011.dbf

file标识数据文件编号,#bkps标识数据文件的备份片文件个数,name标识数据文件的名称。因为数据文件3.5.7.分别只有一个备份片,所以为例防止这三个数据文件的备份片出现问题,应该再次备份这些数据文件。

示例四:报告在恢复时间窗口内未备份的数据文件。

通过使用恢复时间窗口,可以将恢复操作需要的应用归档日志控制在特定的时间范围内,使用report need backup命令的recovery window选项,可以报告在特定恢复时间窗口内为恢复的数据文件,下面报告查过恢复窗口(6天)的未备份数据文件为例:

RMAN> report need backup recovery window of 6 days;


file用于标识数据文件编号,days标识恢复数据文件需要应用几天的归档日志。


报告陈旧备份:如果特定数据文件进行了多次备份,那么可以删除早期备份,通过使用report obsolete 命令,REPORT OBSOLETE RECOVERY WINDOW OF 3 DAYS;
REPORT OBSOLETE REDUNDANCY 1;报告陈旧备份。下面报告备份次数查过2次啊的陈旧备份:

RMAN> report obsolete redundancy 1;

Report of obsolete backups and copies
Type                 Key    Completion Time    Filename/Handle
-------------------- ------ ------------------ --------------------
Backup Set           62     21-JAN-14         
  Backup Piece       63     21-JAN-14          /u01/app/backuptest/db_TEST_20140121_2aoukt66_1_1.bak
Backup Set           63     21-JAN-14         
  Backup Piece       64     21-JAN-14          /u01/app/backuptest/db_TEST_20140121_2bouktbm_1_1.bak
Backup Set           64     21-JAN-14         
  Backup Piece       65     21-JAN-14          /u01/app/backuptest/arch_TEST_20140121_2couktbp_1_1.bak
Backup Set           65     21-JAN-14         
  Backup Piece       66     21-JAN-14          /u01/app/backuptest/cntrl_TEST_20140121_2douktfl_1_1.bak
Backup Set           66     21-JAN-14         
  Backup Piece       67     21-JAN-14          /u01/app/backuptest/arch_TEST_20140121_2eoukvst_1_1.bak
Backup Set           67     21-JAN-14         
  Backup Piece       68     21-JAN-14          /u01/app/backuptest/db_TEST_20140121_2foukvsv_1_1.bak
Backup Set           68     21-JAN-14         
  Backup Piece       69     21-JAN-14          /u01/app/backuptest/db_TEST_20140121_2goukvt0_1_1.bak
Backup Set           69     21-JAN-14         
  Backup Piece       70     21-JAN-14          /u01/app/backuptest/arch_TEST_20140121_2houkvt2_1_1.bak
Backup Set           70     21-JAN-14         
  Backup Piece       71     21-JAN-14          /u01/app/backuptest/cntrl_TEST_20140121_2ioul012_1_1.bak
Backup Set           71     22-JAN-14         
  Backup Piece       72     22-JAN-14          /u01/app/backuptest/arch_TEST_20140122_2koun8pq_1_1.bak


RMAN>  report obsolete redundancy 2;


Report of obsolete backups and copies
Type                 Key    Completion Time    Filename/Handle
-------------------- ------ ------------------ --------------------
Backup Set           63     21-JAN-14         
  Backup Piece       64     21-JAN-14          /u01/app/backuptest/db_TEST_20140121_2bouktbm_1_1.bak
Backup Set           65     21-JAN-14         
  Backup Piece       66     21-JAN-14          /u01/app/backuptest/cntrl_TEST_20140121_2douktfl_1_1.bak
Backup Set           70     21-JAN-14         
  Backup Piece       71     21-JAN-14          /u01/app/backuptest/cntrl_TEST_20140121_2ioul012_1_1.bak


RMAN> 

type标识备份类型,key唯一标识备份集或备份片的编号,completion time标识备份集或备份片的完成时间。filename/handle 用于标识备份片文件名称。因为备份片demo_70.bak是陈旧备份。所以可以考虑使用delete obsolete命令删除该备份片。

报告不可恢复的数据文件:

当使用nologging选项装载了数据库之后,因为数据变化没有被记载到归档日志中,所以会导致过去的数据文件备份不能回复当前的数据文件,为了防止数据文件不能恢复,应该备份数据文件。通过使用report unrecoverable命令,报告不可恢复的数据文件。示例:

RMAN> report  unrecoverable;


type of backup required 用于标识备份类型,name用于标识数据文件的名称,因为数据文件users01.dbf出现介质失败时,将不可恢复,所以为了防止出现该问题,应该备份该数据文件。


2、list命令:

list命令用于详细分析rman 资料库,并列出备份集和映像副本的详细报告。通过使用list命令,可以列出数据文件,控制文件,归档日志和spfile的备份集,可以列出数据文件,控制文件和归档日志的副本,可以列出数据库副本。下面通过示例说明使用list命令的各种方法。

列出数据文件备份集:

list backup of database —— 列出所有数据文件的备份集。

list backup of tablespace TEST1——列出特定表空间的所有数据文件备份集

list backup of datafile '/u01/app/oracle/oradata/test/test011.dbf'  —— 列出特定数据文件的备份集。

LIST BACKUP OF DATAFILE 1;

list常用命令总结备忘


    list命令列出控制文件、RMAN恢复目录中备份信息, 是我们对所有可见的数据库备份文件的一个最直观的了解的方法

    list incarnation;
    list backup summary;
    list backup of database summary;
    list backup of tablespace summary;
    list backup of datafile n,n summary;
    list archivelog all summary;

    list backup by file;
    list backup;
    list expired backup;
    list copy;

    list backup of spfile;
    list backup of controlfile;
    list backup datafile n,n,n;
    list backup tablespace tablespace_name;
    list backup of archivelog all;
    list backup of archivelog from scn ...;
    list backup of archivelog until scn ...;
    list backup of archivelog from sequence ..;
    list backup of archivelog until time 'sysdate-10';
    list backup of archivelog {all, from, high, like, logseq, low, scn, sequence, time, until};

List 当前RMAN所备份的数据库:
   

 RMAN> list incarnation;
  汇总查询:--如果备份文件多的话多用这两个list命令可以对备份文件有个总体了解。


    1.1. list backup summary; --概述可用的备份

        B 表示backup
        A 表示Archivelog、 F 表示full backup、 0,1,2 表示incremental level备份
        A 表示可用AVALIABLE、 X 表示EXPIRED

        这个命令可以派生出很多类似命令,例如
        list backup of database summary
        list backup of archivelog all summary
        list backup of tablespace users summary;
        list backup of datafile n,n,n summary

    这些命令可以让我们对已有的备份文件有一个整体,直观的了解。


    1.2.list backup by file;--按照文件类型分别列出
        分别为:数据文件列表、归档日志列表、控制文件列表、SPFILE列表

    1.3.list backup;
    这个命令列出已有备份集的详细信息。

    1.4.list expired backup;
    列出过期的备份文件

    1.5.list copy;
    列出copy文件
    list copy of database;
    list copy of controlfile;
    list copy of tablespace users;
    list copy of datafile n,n,n;
    list copy of archivelog all;
    list copy of archivelog from scn 10000;
    list copy of archivelog until sequence 12;

 


2. List 相关文件的信息
    list backup of {archivelog, controlfile, database, datafile, spfile, tablespace};
    list backup of database; --full,incremental,tablespace,datafile

2.1服务器参数文件:
    list backup of spfile;


2.2 控制文件:
    list backup of controlfile;


2.3 数据文件:
    list backup of datafle n,n,n,n;


2.4表空间:
    list backup of tablespace tablespace_name;--表空间对应的backup

2.5归档日志:
    list backup of archivelog {all, from, high, like, logseq, low, scn, sequence, time, until};
    list backup of archivelog all;
    list backup of archivelog until time 'sysdate-1';
    list backup of archivelog from sequence 10;
    list backup of archivelog until sequence 10;
    list backup of archivelog from scn 10000;
    list backup of archivelog until scn 200000;

    list archivelog from scn 1000;
    list archivelog until scn 2000;
    list archivelog from sequence 10;
    list archivelog until sequence 12;



如上所述,列出数据文件备份集时,既列出了备份集部分信息,也列出数据文件的信息。其中:BS key 用于唯一标示备份集的数字编号。type用于标识备份类型(完全备份或是增量备份),LV标识增量备份级别。size 标识数据文件占用的备份集空间。device type用于标识存放备份集的设备类型。elapsed time标识建立备份集的开销时间。completion time 用于标识建立备份集的完成时间。bp key 用于唯一标识备份片的数字编号。status用于唯一标识备份片文件的状态,compressed用于 标识备份片是否为二进制压缩为文件。tag标识备份片标记。piece name 用于标识备份片所对应os文件名。在数据文件部分:file 文件编号。LV标识增量备份级别。type标识备份类型。ckp scn 用于标识备份数据文件的检查点scn值。ckp time 用于标识备份数据文件的检查点时间。name用于标识数据文件的名称。

列出控制文件备份集:

list backup of controlfile;

列出归档日志备份集:

list backup of archivelog;

列出spfile备份集:

list backup of spfile

列出数据文件映像副本:

list copy of database; ——列出所有数据文件的副本。

list copy of tablespace —— 可以列出特定表空间的所有映像副本。

list copy of datafile ——列出特定数据文件的映像副本。


列出控制文件映像副本:

list copy of controlfile

列出归档日志映像副本:

list copy of archivelog all

列出数据库副本,注意每次用resetlogs选项打开数据库之后都会生成一个新的数据库副本。下面列出所有数据库副本,示例:

RMAN> list incarnation of database;





3、crosscheck命令:

该命令用于核对磁盘和磁带上的备份文件,以确保rman资料库与备份文件保持同步,注意,该命令只会检查rman资料库所记载的备份文件,当执行crosscheck命令时,如果资料库记录不匹配与备份文件的物理状态,那么该命令会更新资料库记录的状态信息。当使用crosscheck命令核对了备份文件之后,备份文件的状态会括:avalible 、 unavalable 、 exored 三种,如果备份文件处于expired状态,则说明备份文件应经被手工删除或损坏。注意,如果备份文件处于expired状态,应该使用delete命令删除该备份文件。

核对所有的备份集:用命令crosscheck backup命令来完成的,当执行该命令时,会核对包括数据文件、控制文件、归档日志和spfile在内的所有备份集。

RMAN >corsscheck backup。

如果发现有备份文件片处于expired状态,通过list可以列出备份文件的信息RMAN > list backupset 1; 这里这个1代表recid值、

核对所有数据文件的备份集:

使用RMAN >crosscheck backup of database 命令来完成的。


核对特定表空间的备份集:

RMAN > crosscheck up of tablespace users;


核对特定数据文件的备份集:

RMAN > crosscheck backup of datafile 4;


核对控制文件的备份集:

RMAN > crosscheck backup of controlfile ;

核对spfile的备份集:

RMAN >  crosscheck backup of spfile ;

核对归档日志的备份集:

RMAN > crosscheck backup of archivelog sequence 4;

 

核对所有映像副本:

RMAN > crosscheck copy;

list copy命令可以列出映像副本的信息:RMAN > list copy of archivelog sequence 1;

核对所有数据文件的映像副本:

RMAN > crosscheck copy of database ; 

核对待定表空间的映像副本:

RMAN >  crosscheck copy of tablespace users;

会特定数据文件的映像副本:

RMAN > crosscheck copy of datafile 4;

核对控制文件的映像副本:

RMAN > crosscheck copy of controlfile ;

核对归档日志的映像副本:

RMAN > crosscheck copy of archivelog sequence 4;





















三、backup常用命令总结备忘
    1.设置备份标记
        backup database tag='full_bak1';
        注:每个标记必须唯一,相同的标记可以用于多个备份只还原最新的备份。

    2.设置备份集大小(一次备份的所有结果为一个备份集,要注意备份集大小)
        backup database maxsetsize=100m tag='datafile1';
        注:maxsetsize限定备份集的大小。所以必须大于数据库总数据文件的大小,否则会报错。
      RMAN-06183: datafile or datafile copy larger than MAXSETSIZE: file# 1 /data/oradata/system01.dbf

    3.设置备份片大小(磁带或文件系统限制)
        run {
        allocate channel c1 type disk maxpicecsize 100m format '/data/backup/full_0_%U_%T';
        backup database tag='full_0';
        release channel c1;
        }
        可以在allocate子句中设定每个备份片的大小,以达到磁带或系统限制。
        也可以在configure中设置备份片大小。
        Configure channel device type disk maxpiecesize 100 m;
        configure channel device type disk clear;

    4.备份集的保存策略
        backup database keep forever;                  --永久保留备份文件
        backup database keep until time='sysdate+30'; --保存备份30天


    5.重写configure exclude命令
        backup databas noexclude keep forever tag='test backup';

    6.检查数据库错误
        backup validate database;
        使用RMAN来扫描数据库的物理/逻辑错误,并不执行实际备份。

    7.跳过脱机,不可存取或只读文件
        backup database skip readonly;
        backup database skip offline;
        backup database skip inaccessible;
        backup database ship readonly skip offline ship inaccessible;

    8.强制备份
        backup database force;

    9.基于上次备份时间备份数据文件
        1>只备份添加的新数据文件
            backup database not backed up;
        2>备份"在限定时间周期内"没有被备份的数据文件
            backup database not backed up since time='sysdate-2';

    10.备份操作期间检查逻辑错误
        backup check logical database;
        backup validate check logical database;

    11.生成备份副本
        backup database copies=2;

    12.备份控制文件
        backup database device type disk includ current controlfile;



4、delete 命令:

该命令用于删除rman 备份记录集相应的物理文件,但是使用rman执行备份操作时,会在rman资料库中生成rmna备份激励,并且rman备份记录被存放在目标数据库的控制文件中;如果配置了恢复目录,那么该备份记录也会被存放到恢复目录中。通过执行delete命令。不仅会删除物理备份文件,而且会将控制文件所记载的备份记录状态改变为deleted并且从恢复目录中删除备份记录。

删除陈旧备份:当使用delete obsolete 命令时,会根据备份冗余策略确定陈旧备份。假定定义备份冗余策略的冗余度为2,那么rman会将相同文件的最近连词备份之前的所有备份标记为陈旧备份。

删除expired备份集:

当使用os命令删除了备份集对应的备份片文件以后,如果执行crosscheck命令核对备份集,那么会将该备份集标记问expired状态,为了删除相应的备份记录。可以执行delete expired backup 命令。下面以删除expired备份集,并且不显示提示信息为例。

RMAN > delete noprompt expired backup;

删除expired副本:

使用delete expired copy命令,当使用os命令删除了映像副本文件之后,如果执行crosscheck命令核对映像副本,那么会将该映像副本标记为expired状态,为了删除相应的备份记录。可以执行delete expired copy 命令。下面以删除expired备份集,并且不显示提示信息为例。

RMAN >delete noprompt expired copy;

删除特定备份集:删除特定备份集是使用delete backupset命令来完成的。并且在特定备份集时应该制定备份集编号。下面以删除备份集19,并且不显示提示信息为例。

RMAN >deleter noprompt backupset 19;

删除特定备份片:

使用delete backuppiece命令完成,删除时应指定备份片的文件名。以删除备份片:d:\backup\demo_18.bak并且不显示提示信息为例

RMAN > delete noprompt backuppiece 'd:\backup\demp_18.bak';

删除所有备份集:

RMAN > delete noprompt backup;

删除特定映像副本:如果要删除数据文件映像副本使用delete datafilecopy命令。如果要删除控制文件映像副本:delete controlfilecopy命令;如果要删除归档日志映像副本,使用delete archivelog 命令。

当删除特定映像副本时,必须制定映像副本文件名。

如:RMAN >delete noprompt datafilecopy ‘d:、backup、demo_31.bak’

删除所有映像副本:

RMAN > delete noprompt copy。

在备份后删除输入对象:

RMAN > backup archivelog all delete input;

RMAN > backup backupset 22 format =‘d:\backup\%u.bak’  delete input;

5、change

该命令用于改变备份记录的状态,当使用rman执行备份操作时,会在rman资料库中生成rman备份记录,并且初始化备份九路处于available状态,标识其对应的备份集或者映像副本时可用的。,当维护存储设备(磁盘或者磁带)时,可能需要将备份集或者映像副本转变为unavalable状态。

改变备份集状态:用命令change backupset 。。available/unavailable 命令来完成的。当改变了备份集状态之后可以使用list命令进行检查。

RMAN > change backupset 22 unavailable 。

改变映像副本状态:用命令:change datafilecopy 。。available/unavailable 命令来完成的;改变控制文件映像副本命令:change controlfilecopy 。。available/unavailable. 归档日志映像副本:change archivelog 。。available/unavalable命令来完成的。示例:

RMAN > change datafilecopy 'd:\backup\demp_37.bak' unavailable;

建立长期备份(long-term backup):

长期备份是指被长期暴露的备份文件,使用长期备份的目的是为了可以讲数据库恢复到过去的特定时间点。当设定了长期备份之后,rman 会才能够备份冗余策略中免除该备份文件,也就是说,长期备份文件不会被标记为陈旧备份。使用change 。。keep命令可以建立昌吉备份。使用change 。。 nokeep命令可以免除长期备份。注意change 。。 keep/nokeep命令只适用于恢复目录。

示例一:是备份集156永久保留: RMAN > change backupset 156  keep forever logs;

示例二:使备份集198保留60天:RMAN > change backupset 198 keep until time ‘sysdate+60’ logs;

示例三:免除备份集156的保留期限:RMAN > change backuypset 156 nokeep;

6、catalog命令:

该命令用于追加备份记录到rman资料库,当使用rman执行备份操作时,会自动生成备份记录,并存放备份记录信息到rman资料库。但如果使用os工具备份了数据文件,控制文件,归档日志和备份片,慢慢rman资料库将不会记载这些信息,为了使得rman使用这些备份文件,必须使用cataloglog命令将元数据追加到rman 资料库中,

注册副本:注册数据文件副本时使用catalog datafilecopy命令来完成的,注册控制文件副本时使用catalog controlfilecopy命令完成的。注册归档日志副本是catalog archivelog命令完成的。在执行了用户管理的备份之后,为了使得rman 能够使用期备份文件,必须注副本信息到rman资料库。下面将数据文件备份users01.bak注册到rman资料库为例:

RMAN > catalog datafilecopy ‘d:\backup\users01.bak’;

注册备份片:


四、configure常用命令总结备忘


4.1 显示当前的配置信息

1.1 RMAN> show all;

RMAN 配置参数为:

CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

CONFIGURE BACKUP OPTIMIZATION OFF; # default

CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default

CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default

CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default

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 UNLIMITED; # default

CONFIGURE ENCRYPTION FOR DATABASE OFF; # default

CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default

CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default

CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:/ORACLE/PRODUCT/10.2.0/DB_1/DATABASE/S

NCFDBA.ORA'; # default


1.2 查询RMAN设置中非默认值:
    SQL> select name,value from v$rman_configuration;


4.2. 常用的configure选项

4.2.1 保存策略 (retention policy)

   configure retention policy to recovery window of 7 days;
   configure retention policy to redundancy 5;
   configure retention policy clear;

CONFIGURE RETENTION POLICY TO NONE;
第一种recover window是保持所有足够的备份,可以将数据库系统恢复到最近七天内的任意时刻。任何超过最近七天的数据库备份将被标记为obsolete。
第二种redundancy 是为了保持可以恢复的最新的5份数据库备份,任何超过最新5份的备份都将被标记为redundancy。它的默认值是1份。

第三四:NONE 可以把使备份保持策略失效,Clear 将恢复默认的保持策略

一般最安全的方法是采用第二种保持策略。

 



4.2.2 备份优化 backup optimization
   configure backup optimization on;
   configure backup optimization off;
   configure backup optimization clear;
默认值为关闭,如果打开,rman将对备份的数据文件及归档等文件进行一种优化的算法。

4.2.3 默认设备 default device type
   configure default device type to disk;
   configure default device type to stb;
   configure default device type clear;
是指定所有I/O操作的设备类型是硬盘或者磁带,默认值是硬盘
磁带的设置是CONFIGURE DEFAULT DEVICE TYPE TO SBT;


4.3.4 控制文件 controlfile
   configure controlfile autobackup on;
   configure controlfile autobackup format for device type disk to '/cfs01/backup/conf/conf_%F';
   configure controlfile autobackup clear;
   configrue controlfile autobackup format for device type disk clear;
   configrue snapshot controlfile name to '/cfs01/backup/snapcf/scontrofile.snp';

--是配置控制文件的快照文件的存放路径和文件名,这个快照文件是在备份期间产生的,用于控制文件的读一致性。
   configrue snapshot controlfile name clear;


强制数据库在备份文件或者执行改变数据库结构的命令之后将控制文件自动备份,默认值为关闭。这样可以避免控制文件和catalog丢失后,控制文件仍然可以恢复。


4.3.5 并行数(通道数) device type disk|stb pallelism n;
   configure device type disk|stb parallelism 2;
   configure device type disk|stb clear; --用于清除上面的信道配置
   configure channel device type disk format 'e/:rmanback_%U';
   configure channel device type disk maxpiecesize 100m
   configure channel device type disk rate 1200K
    configure channel 1 device type disk format 'e/:rmanback_%U';
    configure channel 2 device type disk format 'e/:rmanback_%U';
    configure channel 1 device type disk maxpiecesize 100m

 

配置数据库设备类型的并行度。


4.3.6 生成备份副本 datafile|archivelog backup copies
   configure datafile backup copies for device type disk|stb to 3;
   configure archivelog backup copies for device type disk|stb to 3;

--是设置数据库的归档日志的存放设备类型
   configure datafile|archivelog backup copies for device type disk|stb clear
   BACKUP DEVICE TYPE DISK DATABASE
    FORMAT '/disk1/backup/%U', '/disk2/backup/%U', '/disk3/backup/%U';


是配置数据库的每次备份的copy数量,oracle的每一次备份都可以有多份完全相同的拷贝。


4.3.7 排除选项 exclude
   configure exclude for tablespace 'users';
   configrue exclude clear;

此命令用于将指定的表空间不备份到备份集中, 此命令对只读表空间是非常有用的。


4.3.8 备份集大小 maxsetsize
   configure maxsetsize to 1G|1000M|1000000K|unlimited;
   configure maxsetsize clear;

4.3.9 其它选项 auxiliary
   CONFIGURE AUXNAME FOR DATAFILE 1 TO '/oracle/auxfiles/aux_1.f';
   CONFIGURE AUXNAME FOR DATAFILE 2 TO '/oracle/auxfiles/aux_2.f';
   CONFIGURE AUXNAME FOR DATAFILE 3 TO '/oracle/auxfiles/aux_3.f';
   CONFIGURE AUXNAME FOR DATAFILE 4 TO '/oracle/auxfiles/aux_4.f';
   -
   CONFIGURE AUXNAME FOR DATAFILE 1 CLEAR;
   CONFIGURE AUXNAME FOR DATAFILE 2 CLEAR;
   CONFIGURE AUXNAME FOR DATAFILE 3 CLEAR;
   CONFIGURE AUXNAME FOR DATAFILE 4 CLEAR;


你可能感兴趣的:(oracle备份恢复)