• RMAN备份与恢复(三)--RMAN备份相关概念


    (1)备份对象

    可以使用RMAN进行的备份对象如下:

    --整个数据库:备份所有的数据文件和控制文件;

    --数据文件:备份指定的一个或多个数据文件;

    --表空间:备份指定的一个或多个表空间;

    --归档重做日志文件:备份归档重做日志文件;

    --控制文件:在线备份目标数据库当前的控制文件;

    --服务器初始化参数文件:备份目标数据库的服务器初始化参数文件;

    --数据文件的镜像复制:备份使用BACKUP AS COPY命令创建数据文件的镜像复制;

    --控制文件的镜像复制:备份使用BACKUP AS COPY命令创建控制文件的镜像复制;

    --备份集:备份使用BACKUP命令创建的备份集。

    使用RMAN对不同对象的备份形成的结果是一个或多个备份集或镜像文件,默认是备份集。

    (2)备份形式

    在RMAN中,备份分为镜像复制和备份集两种。

    --镜像复制是对数据文件、控制文件和归档重做日志文件进进行精确复制,镜像复制文件与原文件大小相同,原文件中未使用的数据块也被复制到备份文件中。只有备份介质为磁盘时,才能进行镜像复制。

    --备份集是RMAN创建的一个具有特定格式的逻辑对象,一个备份集在物理上由一个或多个RMAN指定格式的二进制文件组成。每一个备份文件称为一个备份片段(Backup Piece)。

    (3)RMAN备份类型

    基于RMAN的备份有多种备份类型,包括一致性备份与不一致性备份、数据库打开状态下的备份与关闭(指启动到mount状态)状态下的备份、完全备份与增量备份等。一致性备份是指数据库关闭后加载到mount状态,然后开始备份,利用一致性备份修复数据库后不需要进行恢复操作;不一致性备份是指数据库在打开或非正常关闭情况下的备份,利用不一致性修复数据库后还需进行恢复操作。这里我们着重介绍完全备份与增量备份。

    (3.1)完全备份

    完全备份的概念:RMAN中的完全备份(FULL Backup)不是指对整个数据库进行完全备份,而是对数据文件进行备份时,不管数据文件中的数据块是否被修改都复制到备份中。

    (3.2)增量备份

    增量备份的概念:RMAN中的增量备份(Incremental Backup)是指备份数据文件时,只备份上次增量备份后被修改过的数据块,因此,增量备份要比完全备份小得多,但增量备份的时间不一定比完全备份的时间短,因为增量备份也要读取数据文件中所有的数据块

    根据增量备份所参照的基础不同,增量备份又分为差异增量备份(Differential Incremental Backup)和累积增量备份(Cumulative Incremental Backup)两种。

    • 差异增量备份:以最近级别为0或1的增量备份为基础,复制所有被修改过的数据块。 默认为差异增量备份。
    • 累积增量备份:以最近级别为0的增量备份为基础,复制所有被修改过的数据块。

    例子1.差异增量备份

    如果每周周日对数据库做级别为0的增量备份,即备份数据库中所有被使用的数据块,其余每天对数据库做差异增量备份,即周一备份相对周日的增量备份发生数据变化的数据块,周二备份相对于周一的增量备份发生数据变化的数据块,…,以此类推。备份策略应该如下图:

    difference increace backup

    例子2.累积增量备份

    如果每周周日对数据库做级别为0的增量备份,即备份数据库中所有被使用的数据块,其余每天对数据库做累积增量备份,即周一备份相对周日的增量备份发生数据变化的数据块,周二也备份相对于周日的增量备份发生数据变化的数据块,…,以此类推。备份策略应该如下图:

    add increase backup

    (4)并行备份

    默认情况下,RMAN在创建备份集时只会使用一个通道向一个磁盘或磁带中写入数据,如果要备份的文件较多,可以启动多个通道同时向多个磁盘写入数据,即并行备份。

    可以通过以下几种方式启用并行备份:

    --使用CONFIGURE DEVICE TYPE disk/sbt命令将 PARALLELISM 参数设置大于1

    --在执行BACKUP命令之前手动分配多个通道,然后在BACKUP命令中设置FILESPERSET参数,这样在备份时RMAN会根据参数设置备份集的数量,使用手动分配的通道进行并行备份。

    (5)通道分配

    在使用RMAN对目标数据库进行备份、修复、及恢复时,必须为操作系统分配通道。可以手动分配,也可以自动分配。

    (5.1)自动分配

    自动分配通道相关预定义参数包括:

    --CONFIGURE DEFAULT DEVICE TYPE TO disk|sbt :指定自动通道的默认设备;

    --CONFIGURE DEVICE TYPE disk|sbt PARALLELISM n :设置自动通道的数量;

    --CONFIGURE CHANNEL DEVICE TYPE:对自动分配的所有通道进行设置;

    --CONFIGURE CHANNEL n DEVICE TYPE:对自动分配的通道编号为n的进行设置。

    (5.2)手动分配

    可以使用RUN命令手动分配通道,语法为:

    RUN{
    ALLOCATE CHANNEL 通道名称 DEVICE TYPE 设备类型;
    BACKUP …
    }

    例子.为user01表空间的备份分配一个通道,设备类型为磁盘

    RUN{
    ALLOCATE CHANNEL ch1 DEVICE TYPE disk FORMAT ‘/home/%U’;
    BACKUP TABLESPACE usre01;
    }

    在RMAN命令执行器中,单独执行BACKUP命令时,使用自动分配的通道,在RUN内使用BACKUP命令,但没有手动分配通道,则使用自动分配的通道。

    可以同时定义多个通道并行备份数据库,例如,使用2个通道并行备份两个数据文件。

    RMAN > RUN {
    ALLOCATE CHANNEL ch1 DEVICE TYPE disk;
    ALLOCATE CHANNEL ch2 DEVICE TYPE disk;
    BACKUP DATAFILE 1,2;
    }

    如果每个BACKUP语句只对应一个数据文件,则在同一时间只有一个数据文件备份,只有一个通道被激活。

    RMAN > RUN{ 
    ALLOCATE CHANNEL ch1 DEVICE TYPE disk1; 
    ALLOCATE CHANNEL ch2 DEVICE TYPE disk1; 
    BACKUP DATAFILE 1; 
    BACKUP DATAFILE 2; 
    }
  • 相关阅读:
    Sublime Text 2快捷键大全
    JavaSE
    Ubuntu16.04 install ideaIC-2017.2.5.tar.gz
    Ubuntu/CentOS hadoop-2.x Cluster Setup
    Ubuntu16.04 install hadoop-2.8.1.tar.gz Cluster Setup
    12file
    11input/output
    10function
    09FlowControl
    08test
  • 原文地址:https://www.cnblogs.com/lijiaman/p/7041652.html
Copyright © 2020-2023  润新知