• [转]Oracle DB 使用RMAN创建备份1


    • 创建映像文件备份
    • 创建整体数据库备份
    • 创建完全数据库备份
    • 启用快速增量备份
    • 创建双向备份集
    • 备份备份集
    • 创建RMAN 多部分备份
    • 创建归档备份以用于长期保留
    • 报告和维护备份
     
    • 创建备份集
    RMAN> BACKUP AS BACKUPSET
    2> FORMAT '/BACKUP/df_%d_%s_%p.bus'
    3> TABLESPACE hr_data;
     
    创建备份集
    RMAN 可以按RMAN 专用格式存储其备份,这种格式称为备份集。
    备份集是由被称为备份片段的一些文件组成的集合,每个备份片段可能包含一个或多个数据库文件的备份。
    注:使用此命令创建备份片段时,FORMAT参数指定用于创建备份片段文件名时使用的模式。
    也可以通过ALLOCATE CHANNEL和CONFIGURE命令提供FORMAT规范。
     
    • 创建映像副本
    RMAN> BACKUP AS COPY DATAFILE '/ORADATA/users_01_db01.dbf';
    RMAN> BACKUP AS COPY ARCHIVELOG LIKE '/arch%';
     
     
    创建映像副本
     
    映像副本是单个数据文件、归档重做日志或控制文件的克隆。
    可以使用BACKUP AS COPY命令或操作系统命令创建映像副本。
    使用RMAN 的BACKUP AS COPY命令创建映像副本时,服务器会话将验证文件中的块,然后在控制文件中记录副本信息。
     
     
    映像副本具有以下特征:
    • 映像副本只能写入磁盘。处理大型文件时,复制的时间可能很长,但是由于磁盘上提供了副本,因此可明显地减少还原时间。
    • 如果文件存储在磁盘上,在RMAN 中通过SWITCH命令可立即使用文件,这个命令等效于ALTER DATABASE RENAME FILE SQL 语句。
    • 在映像副本中,无论块中是否包含数据都会复制所有的块,这是因为Oracle DB 进程会复制文件,还会执行其它操作,如检查损坏的块以及在控制文件中注册副本。要加速复制过程,可使用NOCHECKSUM参数。默认情况下,RMAN 将计算每个备份块的校验和,并将其与备份一起存储起来。还原备份时,将对校验和进行验证。
    • 映像副本可以是完全备份的一部分,或是0 级增量备份的一部分,因为文件副本中始终包含所有块。如果副本将与增量备份集一起使用,则必须使用0 级选项。
     
     
     
    • 创建整体数据库备份
    RMAN> BACKUP DATABASE PLUS ARCHIVELOG;
     
     
     
    创建整体数据库备份
    整体数据库备份可以是整个数据文件集的备份集或映像副本,其中必须包含控制文件。
    此外,还可以根据需要包括服务器参数文件(SPFILE) 和归档重做日志文件。使用Recovery Manager (RMAN) 可为所有数据库文件创建映像副本,这只需执行以下几步即可完成:装载或打开数据库,启动RMAN,然后输入上图所示的BACKUP命令。
     
    此外,在备份归档日志文件时还可以提供DELETE INPUT选项。这会使RMAN 在备份归档日志文件之后将其删除。
    如果未使用快速恢复区,则该选项尤为有用,它会在空间变得紧缺时删除文件,从而为用户执行空间管理。
     
    如果使用该选项,则命令应类似于:
    RMAN> BACKUP DATABASE PLUS ARCHIVELOG DELETE INPUT;
     
     
    必须在发出以下CONFIGURE命令后,才能按上述方式进行备份:
    • CONFIGURE DEFAULT DEVICE TYPE TO disk;
    • CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COPY;
    • CONFIGURE CONTROLFILE AUTOBACKUP ON;
     
    此外还可使用以下命令,为数据库中所有数据文件和控制文件的以前的映像副本创建备份(备份集或映像副本):
    RMAN> BACKUP COPY OF DATABASE;
     
    默认情况下,RMAN 依次执行每个BACKUP命令。但是,可采用以下方法并行执行复制操作:
    • 使用CONFIGURE DEVICE TYPE DISK PARALLELISM n命令,其中n是所需的并行度
    • 分配多个通道
    • 指定一个BACKUP AS COPY命令并列出多个文件
     
     
    • RMAN 备份类型
    • 完全备份包含所有使用的数据文件块。
    • 0 级增量备份等同于标记为0 级的完全备份。
    • 1 级累积增量备份只包含自上次0 级增量备份以来修改过的块。
    • 1 级差异增量备份只包含自上次增量备份以来修改过的块。
     
     
    RMAN 备份类型
     
    完全备份
    完全备份不同于整体数据库备份。完全数据文件备份是包含文件中所有已用数据块的备份
    RMAN 将所有块复制到备份集或映像副本中,仅跳过从未使用的数据文件块
    完全映像副本可准确地再现整个文件的内容。完全备份不能成为增量备份策略的一部分;它也不能成为后续增量备份的父项。
     
     
    增量备份
    增量备份是0 级备份,其中包含数据文件中除从未使用的块之外的所有块;
    或者是1 级备份,其中仅包含自上次备份以来更改过的那些块。
    0 级增量备份在物理上与完全备份完全一样。
    唯一区别是0 级备份(及映像副本)可用作1 级备份的基础,但完全备份不可用作1 级备份的基础。
    增量备份是使用BACKUP命令的INCREMENTAL关键字指定的。可以指定INCREMENTAL LEVEL [0 | 1]。
     
     
    RMAN 可创建多级增量备份,如下所示:
    • 差异:是增量备份的默认类型,备份自上次增量备份(1 级或0 级)以来更改过的所有块
    • 累积:备份自上次0 级备份以来更改过的所有块示例
    • 要执行0 级增量备份,请使用以下命令:
    RMAN> BACKUP INCREMENTAL LEVEL 0 DATABASE;
    • 要执行差异增量备份,请使用以下命令:
    RMAN> BACKUP INCREMENTAL LEVEL 1 DATABASE;
    • 要执行累积增量备份,请使用以下命令:
    RMAN> BACKUP INCREMENTAL LEVEL 1 CUMULATIVE DATABASE;
     
     
    默认情况下,如果既没有指定FULL也没有指定INCREMENTAL,则RMAN 将执行完全备份。
     
    将数据文件备份到备份集时,压缩未使用的块会导致跳过从未被写过的块,甚至对于完全备份也是如此。
     
    虽然完全映像副本备份可通过RECOVER命令应用增量备份来增量更新,但是完全备份对后续的增量备份没有影响,
    也不会成为任何增量备份策略的一部分。
     
     
    注:数据库处于NOARCHIVELOG模式时可执行任何类型的备份(完全或增量)-当然,数据库必须未处于打开状态。
    另请注意,数据库只能恢复到上次备份时的状态。
    只有当数据库处于ARCHIVELOG模式时,才可以将其恢复到上次提交事务处理时的状态。
     
    • 快速增量备份
    通过块更改跟踪实现,它可以:
    • 维护自上次备份以来发生更改的块的记录
    • 生成重做时,将此记录写入文件
    • 执行备份时自动访问,使备份更快地执行
     
    快速增量备份
    执行增量备份的目的是为了只备份自上一次备份以来更改过的数据块。使用RMAN 可创建数据文件、表空间或整体数据库的增量备份。执行增量备份时,RMAN 只读取所引用的块来查找自上次备份以来发生过更改的块。这会减小备份大小,因为只备份更改过的块。
     
    此外,由于减少了需要还原的块数,因此还会加快恢复速度。
    通过启用块更改跟踪,可执行快速增量备份。块更改跟踪会将有更改的每个块的物理地址写入到一个文件中。需要执行增量备份时,RMAN 可查看块更改跟踪文件,并只备份该文件所引用的块,而无需通过扫描每个块来确定该块自上次备份以来是否发生过更改。
    这会加快增量备份的速度。
     
    跟踪文件的维护是完全自动进行的,不需要用户的干预。
     
    块更改跟踪文件的大小与以下各项成比例:
    • 数据库大小,以字节为单位
    •RAC 环境中启用的线程数
    • 块更改跟踪文件维护的旧备份数
    块更改跟踪文件最小为10 MB,分配的新空间以10 MB 为单位递增。默认情况下,Oracle DB 不记录块更改信息。
     
    • 启用快速增量备份
    ALTER DATABASE
    {ENABLE|DISABLE} BLOCK CHANGE TRACKING
    [USING FILE '...']
     
    启用快速增量备份
    在Database Control 主页上可以启用块更改跟踪功能。导航到“Availability > Backup Settings > Policy(可用性> 备份设置> 策略)”。如果已设置DB_CREATE_FILE_DEST初始化参数,则不需要设置块更改跟踪文件的目标位置,这是因为会在DB_CREATE_FILE_DEST位置创建该文件,格式为Oracle Managed File (OMF) 文件。
    但是,可以指定块更改跟踪文件的名称,然后将其放在选定的位置。
     
     
    还可以使用ALTER DATABASE命令启用或禁用此功能。
    如果更改跟踪文件与数据库文件一起存储在数据库区域中,当禁用更改跟踪时就会删除更改跟踪文件。
    通过使用ALTER DATABASE RENAME命令可重命名块更改跟踪文件。数据库必须处于MOUNT状态才能重命名跟踪文件。
     
     
    使用ALTER DATABASE RENAME FILE命令更新控制文件时可引用新位置。
     
    可以使用以下语法更改块更改跟踪文件的位置:
    ALTER DATABASE RENAME FILE '...' TO '...';
    注:RMAN 不支持对块更改跟踪文件进行备份和恢复。因此,不应将其放在快速恢复区。
     
     
    • 监视块更改跟踪
    SQL> SELECT filename,status, bytes FROM v$block_change_tracking;
     

    sys@TEST0924> SELECT filename,status, bytes FROM v$block_change_tracking;

    FILENAME                                                     STATUS          BYTES
    ------------------------------------------------------------ ---------- ----------
    /u01/app/oracle/oradata/test0924/changed_block_tracking.log  ENABLED      11599872

     
     
    SQL> SELECT file#, avg(datafile_blocks), avg(blocks_read), avg(blocks_read/datafile_blocks)* 100 ASPCT_READ_FOR_BACKUP, avg(blocks)
    FROM v$backup_datafile
    WHERE used_change_tracking = 'YES'
    AND incremental_level > 0
    GROUP BY file#;
     
     
    监视块更改跟踪
    在V$BLOCK_CHANGE_TRACKING视图的输出中会显示块更改跟踪文件的位置、块更改跟踪的状态(ENABLED/DISABLED) 和文件大小(以字节为单位)。
    对V$BACKUP_DATAFILE视图进行查询,可显示块更改跟踪功能对最大限度减少增量备份I/O 的作用(PCT_READ_FOR_BACKUP列)。
    值比较高时表示RMAN 在增量备份期间从数据文件中读取的块非常多。通过减少增量备份之间的时间间隔可降低这个比率。
     
     
    以下是V$BACKUP_DATAFILE查询的输出格式示例:
    FILE# BLOCKS_IN_FILE BLOCKS_READ PCT_READ_FOR_BACKUP BLOCKS_BACKED_UP
    ----- -------------- ----------- ------------------- ----------------
    1 56320 4480 7 462
    2 3840 2688 70 2408
    3 49920 16768 33 4457
    4 640 64 10 1
    5 19200 256 1 91
     
    • 创建快速增量备份
    1、使用Oracle Enterprise Manager Database Control 配置备份优化并启用块更改跟踪功能。允许使用默认的块更改跟踪文件。
     
     
    a) 从EM 的“Database(数据库)”主页,导航到“Availability > Backup Settings > Policy(可用性> 备份设置> 策略)”,并启用备份优化和块更改跟踪功能。注意设置块更改跟踪文件位置。
     
     
    b) 单击“OK(确定)”。
     
    c) 如果看到以下错误消息,则表示没有输入操作系统身份证明。如果是这种情况,请继续执行以下步骤。
     
     
    d) 滚动到页面底部,然后输入 oracle 作为用户名,oracle 作为口令。同时,选中将其“Save as Preferred Credential(另存为首选身份证明)”的选项。
     
     
     
     
    e) 单击“OK(确定)”。
     
     
    2、确保ORACLE_SID为目前设置的,登录RMAN 并创建0 级增量备份。
     
     
    RMAN> backup incremental level 0 database plus archivelog;
     
     
    Starting backup at 2013-10-05:22:03:50
    current log archived
    using channel ORA_DISK_1
    channel ORA_DISK_1: starting archived log backup set
    channel ORA_DISK_1: specifying archived log(s) in backup set
    input archived log thread=1 sequence=88 RECID=81 STAMP=828050556
    input archived log thread=1 sequence=89 RECID=82 STAMP=828050562
    input archived log thread=1 sequence=90 RECID=83 STAMP=828050576
    input archived log thread=1 sequence=91 RECID=84 STAMP=828050630
    channel ORA_DISK_1: starting piece 1 at 2013-10-05:22:03:50
    channel ORA_DISK_1: finished piece 1 at 2013-10-05:22:03:53
    piece handle=/u01/app/oracle/fast_recovery_area/TEST0924/backupset/2013_10_05/o1_mf_annnn_TAG20131005T220350_951k86yo_.bkp tag=TAG20131005T220350 comment=NONE
    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03
    Finished backup at 2013-10-05:22:03:54
     
    Starting backup at 2013-10-05:22:03:54
    using channel ORA_DISK_1
    channel ORA_DISK_1: starting incremental level 0 datafile backup set
    channel ORA_DISK_1: specifying datafile(s) in backup set
    input datafile file number=00002 name=/u01/app/oracle/oradata/test0924/sysaux01.dbf
    input datafile file number=00001 name=/u01/app/oracle/oradata/test0924/system01.dbf
    input datafile file number=00005 name=/u01/app/oracle/oradata/test0924/example01.dbf
    input datafile file number=00008 name=/u01/app/oracle/oradata/test0924/undotbs02.dbf
    input datafile file number=00004 name=/u01/app/oracle/oradata/test0924/users01.dbf
    input datafile file number=00007 name=/u01/app/oracle/oradata/test0924/fla_tbs01.dbf
    input datafile file number=00006 name=/u01/app/oracle/oradata/test0924/lxtb01.dbf
    input datafile file number=00003 name=/u01/app/oracle/oradata/test0924/fla_tbs02.dbf
    input datafile file number=00009 name=/u01/app/oracle/oradata/test0924/undotbs01.dbf
    channel ORA_DISK_1: starting piece 1 at 2013-10-05:22:03:54
    channel ORA_DISK_1: finished piece 1 at 2013-10-05:22:19:22
    piece handle=/u01/app/oracle/fast_recovery_area/TEST0924/backupset/2013_10_05/o1_mf_nnnd0_TAG20131005T220354_951k8d50_.bkp tag=TAG20131005T220354 comment=NONE
    channel ORA_DISK_1: backup set complete, elapsed time: 00:15:28
    Finished backup at 2013-10-05:22:19:23
     
    Starting backup at 2013-10-05:22:19:23
    current log archived
    using channel ORA_DISK_1
    channel ORA_DISK_1: starting archived log backup set
    channel ORA_DISK_1: specifying archived log(s) in backup set
    input archived log thread=1 sequence=92 RECID=85 STAMP=828051406
    input archived log thread=1 sequence=93 RECID=86 STAMP=828051564
    channel ORA_DISK_1: starting piece 1 at 2013-10-05:22:19:24
    channel ORA_DISK_1: finished piece 1 at 2013-10-05:22:19:32
    piece handle=/u01/app/oracle/fast_recovery_area/TEST0924/backupset/2013_10_05/o1_mf_annnn_TAG20131005T221924_951l5f1d_.bkp tag=TAG20131005T221924 comment=NONE
    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:08
    Finished backup at 2013-10-05:22:19:32
     
    Starting Control File and SPFILE Autobackup at 2013-10-05:22:19:32
    piece handle=/u01/app/oracle/fast_recovery_area/TEST0924/autobackup/2013_10_05/o1_mf_s_828051572_951l5oxp_.bkp comment=NONE
    Finished Control File and SPFILE Autobackup at 2013-10-05:22:19:35
     
    3、有了0 级增量备份后,就可以利用块更改跟踪功能进行快速增量备份了。创建1 级增量备份。
     
    RMAN> backup incremental level 1 database plus archivelog;
     
     
    Starting backup at 2013-10-05:22:25:46
    current log archived
    using channel ORA_DISK_1
    skipping archived logs of thread 1 from sequence 88 to 93; already backed up
    channel ORA_DISK_1: starting archived log backup set
    channel ORA_DISK_1: specifying archived log(s) in backup set
    input archived log thread=1 sequence=94 RECID=87 STAMP=828051920
    input archived log thread=1 sequence=95 RECID=88 STAMP=828051946
    channel ORA_DISK_1: starting piece 1 at 2013-10-05:22:25:46
    channel ORA_DISK_1: finished piece 1 at 2013-10-05:22:25:48
    piece handle=/u01/app/oracle/fast_recovery_area/TEST0924/backupset/2013_10_05/o1_mf_annnn_TAG20131005T222546_951lkc16_.bkp tag=TAG20131005T222546 comment=NONE
    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
    Finished backup at 2013-10-05:22:25:48
     
    Starting backup at 2013-10-05:22:25:48
    using channel ORA_DISK_1
    channel ORA_DISK_1: starting incremental level 1 datafile backup set
    channel ORA_DISK_1: specifying datafile(s) in backup set
    input datafile file number=00002 name=/u01/app/oracle/oradata/test0924/sysaux01.dbf
    input datafile file number=00001 name=/u01/app/oracle/oradata/test0924/system01.dbf
    input datafile file number=00005 name=/u01/app/oracle/oradata/test0924/example01.dbf
    input datafile file number=00008 name=/u01/app/oracle/oradata/test0924/undotbs02.dbf
    input datafile file number=00004 name=/u01/app/oracle/oradata/test0924/users01.dbf
    input datafile file number=00007 name=/u01/app/oracle/oradata/test0924/fla_tbs01.dbf
    input datafile file number=00006 name=/u01/app/oracle/oradata/test0924/lxtb01.dbf
    input datafile file number=00003 name=/u01/app/oracle/oradata/test0924/fla_tbs02.dbf
    input datafile file number=00009 name=/u01/app/oracle/oradata/test0924/undotbs01.dbf
    channel ORA_DISK_1: starting piece 1 at 2013-10-05:22:25:48
    channel ORA_DISK_1: finished piece 1 at 2013-10-05:22:26:04
    piece handle=/u01/app/oracle/fast_recovery_area/TEST0924/backupset/2013_10_05/o1_mf_nnnd1_TAG20131005T222548_951lkgoo_.bkp tag=TAG20131005T222548 comment=NONE
    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:16
    Finished backup at 2013-10-05:22:26:04
     
    Starting backup at 2013-10-05:22:26:04
    current log archived
    using channel ORA_DISK_1
    channel ORA_DISK_1: starting archived log backup set
    channel ORA_DISK_1: specifying archived log(s) in backup set
    input archived log thread=1 sequence=96 RECID=89 STAMP=828051964
    channel ORA_DISK_1: starting piece 1 at 2013-10-05:22:26:04
    channel ORA_DISK_1: finished piece 1 at 2013-10-05:22:26:05
    piece handle=/u01/app/oracle/fast_recovery_area/TEST0924/backupset/2013_10_05/o1_mf_annnn_TAG20131005T222604_951lkwsn_.bkp tag=TAG20131005T222604 comment=NONE
    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
    Finished backup at 2013-10-05:22:26:05
     
    Starting Control File and SPFILE Autobackup at 2013-10-05:22:26:06
    piece handle=/u01/app/oracle/fast_recovery_area/TEST0924/autobackup/2013_10_05/o1_mf_s_828051966_951lkz0p_.bkp comment=NONE
    Finished Control File and SPFILE Autobackup at 2013-10-05:22:26:13
     
     
    4、查询 V$BACKUP_DATAFILE,了解为创建1 级增量备份而读取的块数
     

    sys@TEST0924> SELECT file#, avg(datafile_blocks), avg(blocks_read), avg(blocks_read/datafile_blocks)* 100 AS PCT_READ_FOR_BACKUP,  avg(blocks)
      2  FROM v$backup_datafile
    WHERE used_change_tracking = 'YES'
    AND incremental_level > 0
      5  GROUP BY file#;

         FILE# AVG(DATAFILE_BLOCKS) AVG(BLOCKS_READ) PCT_READ_FOR_BACKUP AVG(BLOCKS)
    ---------- -------------------- ---------------- ------------------- -----------
             1                93440             2371          2.53745719         892
             6                 1920                1          .052083333           1
             2                99840             3647          3.65284455        1349
             5                44240                1          .002260398           1
             4                 3520                1          .028409091           1
             8                21760             2791          12.8262868        2643
             7                 3360                1          .029761905           1
             3                 1280                1             .078125           1
             9                  288                1          .347222222           1

    9 rows selected.

    注意,大多数情况下为创建备份读取的块所占的百分比非常低,有时几乎接近于零。
     
     
    • 执行代理副本
     
     
    执行代理副本
    使用RMAN BACKUP命令的PROXY选项可以请求MML 执行文件的副本。
     
    语法:
    BACKUP [AS BACKUPSET] … PROXY [ONLY] DATABASE|TABLESPACE....
    PROXY ONLY选项对于备份由代理完成的介质管理器和存储网络非常有用,这可以明显地减少了存储网络通信量。
     
    一些介质管理产品可完善地管理Oracle 数据文件与备份设备之间的所有数据移动。
     
    某些产品在存储子系统与介质子系统之间使用了高速连接,从而可大幅减少主数据库服务器的备份负载。
     
    这一点十分有用,因为复制是在SAN 上而不是在LAN 上执行的。除了通过LAN 在MML 之间传送状态之外,RMAN 此时已不再涉及操作。
     
    • 使用BACKUP COPIES创建双向备份集
    RMAN> BACKUP AS BACKUPSET DEVICE TYPE sbt COPIES 2 INCREMENTALLEVEL 0 DATABASE;
     
     
    使用BACKUP COPIES创建双向备份集
    为了创建双向备份集,可使用带有COPIES选项的BACKUP命令覆盖其它COPIES或DUPLEX设置。
    要使用BACKUP COPIES创建双向备份,请执行以下步骤:
    1. 使用BACKUP命令的COPIES选项指定完全一样的副本的数量。
    2. 发出LIST BACKUP命令来验证备份。
     
    • 创建备份集的备份
    RMAN> BACKUP DEVICE TYPE DISK AS BACKUPSET DATABASE PLUS ARCHIVELOG;
    RMAN> BACKUP DEVICE TYPE sbt BACKUPSET ALL;
     
     
    创建备份集的备份
    使用RMAN BACKUP BACKUPSET命令可备份先前创建的备份集。
    使用RMAN 只能备份在设备类型DISK上创建的备份集。备份集可备份到任何可用的设备类型。
    BACKUP BACKUPSET命令使用默认磁盘通道在磁盘之间复制备份集。要从磁盘备份到磁
    带,必须配置或手动分配非磁盘通道。
     
    • 备份只读表空间
    备份只读表空间的注意事项:
     
    • 仅当符合保留策略的备份不存在时,备份优化才会让RMAN 备份只读表空间。
     
     
    • 如果将表空间更改为可读/写,可直接对其进行备份。
     
    • 可使用RMAN BACKUP命令的SKIP READONLY选项跳过只读表空间或数据文件。
     
     
    备份只读表空间
    由于只读表空间不能写入,因此无需像读/写表空间那样进行连续备份。可以使用BACKUP命令的SKIP READONLY选项指示RMAN 不备份只读表空间。
     
    • 为超大型文件配置备份和还原
     
    单个文件的多部分备份:
    • 由RMAN 创建,具有指定的大小值
    • 独立进行处理(串行或并行)
    • 生成多片段备份集
    • 提高了备份的性能
     
     
     
    为超大型文件配置备份和还原
    Oracle 数据文件最大为128 TB。通常,RMAN 备份的最小单元是整个文件。这对于如此大的文件不适用。
     
    RMAN 可以选择将大型文件拆分为多个部分,然后单独对这些部分进行备份和还原。
    这是通过创建多部分备份实现的,这种备份将为备份集生成的文件拆分为多个独立文件。
    这种备份仅适用于备份集,不适用于映像副本。
     
     
    每个文件部分都是文件中一系列连续的块。可按串行或并行方式独立处理每个文件部分。
    将文件备份到各单独部分可以提高备份操作的性能,还允许重新启动大型文件备份。
    多部分备份作业可生成一个多片段备份集。每个片段都包含一个文件部分。
     
    多部分备份的所有部分的大小都相同(最后一部分除外)。每个文件最多有256 个部分。
     
    注:对驻留在少量磁盘上的大型文件进行备份时,不宜使用很高的并行度,因为这会使并行操作的作用失效;
    同时对同一磁盘设备进行多个访问会导致争用。
    此功能已内置到RMAN 中。除Oracle Database 11g的常规安装外,不需要其它安装。因为早期版本无法还原多部分备份,所以必须至少将COMPATIBLE设置为11.0。
     
     
    • 创建RMAN 多部分备份
    RMAN 命令语法:
    BACKUP <options> SECTION SIZE <integer> [K | M | G]
    VALIDATE DATAFILE <options> SECTION SIZE <integer> [K | M | G]
     
    示例:
    RMAN> BACKUP DATAFILE 5 SECTION SIZE = 25M TAG 'section25mb';
    backing up blocks 1 through 3200
    piece handle=/u01/.../o1_mf_nnndf_SECTION25MB_382dryt4_.bkp
    tag=SECTION25MB comment=NONE
    ...
    backing up blocks 9601 through 12800
    piece handle=/u01/.../o1_mf_nnndf_SECTION25MB_382dsto8_.bkp
    tag=SECTION25MB comment=NONE
     
     
    创建RMAN 多部分备份
    BACKUP和VALIDATE DATAFILE命令接受以下选项:
    SECTION SIZE <integer> [K | M | G]
    使用该选项可以为每个备份部分指定计划大小。该选项既是备份命令级别选项也是备份规范级别选项,所以可在同一备份作业中对不同的文件应用不同的部分大小。
    在上面的示例中,将对数据文件5 进行备份,并将部分大小指定为25 MB。该数据文件大小为100 MB,因此将创建四个部分。注意,如块范围所示,将块写入部分文件时会保持块相邻性。
     
    查看有关特定多部分备份的元数据
    • V$BACKUP_SET和RC_BACKUP_SET视图都有一个MULTI_SECTION列,用于表明是否为多部分备份。
    • V$BACKUP_DATAFILE和RC_BACKUP_DATAFILE视图都有一个SECTION_SIZE列,用于指定多部分备份的每个部分中的块数。零意味着对整个文件进行备份。

    http://blog.csdn.net/rlhua/article/details/12321679

  • 相关阅读:
    剑指offer:平衡二叉树
    剑指offer:数组中只出现一次的数字
    剑指offer:数字在排序数组中出现的次数
    剑指offer:两个链表的第一个公共结点
    剑指offer:数组中的逆序对
    剑指offer:丑数
    leetcode171 Excel列表序列号
    leetcode172 阶乘后的零
    leetcode 297二叉树的序列化与反序列化
    leetcode 31下一个排列
  • 原文地址:https://www.cnblogs.com/gispf/p/3777574.html
Copyright © 2020-2023  润新知