zoukankan      html  css  js  c++  java
  • RMAN增量备份-备份保留策略-设置备份集属性

    RMAN增量备份:
    增量备份级别:0,1,2,3,4
    BACKUP DATABASE也是创建数据库的完整备份,但是这种备份不同于增量备份的0级备份。这种备份不包含增量备份的0级备份,并不支持在此基础上再创建增量备份。
    1、建立增量级0级的全库备份

    C:UsersAdministrator>RMAN
    
    恢复管理器: Release 11.2.0.1.0 - Production on 星期三 12月 17 21:44:29 2014
    
    Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
    
    RMAN> CONNECT TARGET /
    
    连接到目标数据库: ORCL (DBID=1392118573)
    
    RMAN> BACKUP INCREMENTAL LEVEL=0 DATABASE;
    
    启动 backup17-12月-14
    使用目标数据库控制文件替代恢复目录
    分配的通道: ORA_DISK_1
    通道 ORA_DISK_1: SID=184 设备类型=DISK
    通道 ORA_DISK_1: 正在启动增量级别 0 数据文件备份集
    通道 ORA_DISK_1: 正在指定备份集内的数据文件
    输入数据文件: 文件号=00001 名称=D:APPADMINISTRATORORADATAORCLSYSTEM01.DBF
    输入数据文件: 文件号=00002 名称=D:APPADMINISTRATORORADATAORCLSYSAUX01.DBF
    输入数据文件: 文件号=00005 名称=D:APPADMINISTRATORORADATAORCLEXAMPLE01.DBF
    输入数据文件: 文件号=00003 名称=D:APPADMINISTRATORORADATAORCLUNDOTBS01.DBF
    输入数据文件: 文件号=00004 名称=D:APPADMINISTRATORORADATAORCLUSERS01.DBF
    通道 ORA_DISK_1: 正在启动段 117-12月-14
    通道 ORA_DISK_1: 已完成段 117-12月-14
    段句柄=D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLBACKUPSET2014_12_17O1_MF_NNND0_TAG20141217T214527_B9327SYF_.BKP 标记=TAG20141217T214527 注释=NONE
    通道 ORA_DISK_1: 备份集已完成, 经过时间:00:02:52
    完成 backup17-12月-14
    
    启动 Control File and SPFILE Autobackup 于 17-12月-14
    段 handle=D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLAUTOBACKUP2014_12_17O1_MF_S_866584101_B932F6GY_.BKP comment=NONE
    完成 Control File and SPFILE Autobackup 于 17-12月-14

    2、为数据文件users01.dbf建立增量级别1的备份
    RMAN> BACKUP INCREMENTAL LEVVEL=1 DATAFILE 'D:APPADMINISTRATORORADATAORCLUSERS01.DBF';

    3、为表空间users建立增量级别1的备份
    RMAN> BACKUP INCREMENTAL LEVEL=1 TABLESPACE USERS;
    ==================
    增量备份的类型:
    DIFFERENTIAL差异(默认)和CUMULATIVE累积
    1、以CUMULATIVE增量备份方式创建数据库的完整备份。
    RMAN> BACKUP INCREMENTAL LEVEL=1 CUMULATIVE DATABASE;

    ====
    RMAN在做增量备份时,会把所有的数据文件读入内存,检查每个数据文件的SCN信息,并与增量备份的父备份集相比较来确定块是否被修改过,如果被修改过,则都要进行重新备份。ORACLE10G后有个新的特性:块修改跟踪(Block Change Tracking)。启动块修改跟踪后,RMAN不再去扫描数据文件中的每一个块,直接通过块修改跟踪文件就可以获取哪些块发生了修改的信息。
    启动块修改跟踪:
    SQL> select status from v$block_change_tracking;

    STATUS
    ----------
    DISABLED

    SQL> alter database enable block change tracking usering file'/location/trk_filename';
    禁用块修改跟踪:
    SQL> alter database disable block change tracking;

    ===================
    RMAN备份集保留策略
    1、基于时间的备份保留策略
    设备备份集保留n天
    RMAN> CONFIGURE RETENTION POLICY TO RECOVERY RECOVERY WINDOW OF n DAYS;
    如果N等于7,则7天前的备份都将被RMAN废弃,并可通过DELETE OBSOLETE命令删除。
    对于NOCATALOG下创建的备份,RMAN的备份集信息保存在目标数据的控制文件中,这部分信息的大小也是有限的,受制于初始化参数:CONTROLFILE_RECORD_KEEP_TIME,该参数指定记录在控制文件中保存的天数,默认7天,如果超过7天,并且控制文件由于空间不足,需要重用记录,则7天前的记录可能会被覆盖。
    可通过该视图查询相关信息:V$CONTROLFILE_RECORD_SECTION;

    SQL> select * from v$controlfile_record_section;
    
    TYPE RECORD_SIZE RECORDS_TOTAL RECORDS_USED FIRST_INDEX LAST_INDEX LAST_RECID
    ---------------------------- ----------- ------------- ------------ ----------- ---------- ----------
    DATABASE 316 1 1 0 0 0
    CKPT PROGRESS 8180 11 0 0 0 0
    REDO THREAD 256 8 1 0 0 0
    REDO LOG 72 16 4 0 0 4
    DATAFILE 520 100 5 0 0 38
    FILENAME 524 2298 10 0 0 0
    TABLESPACE 68 100 6 0 0 2
    TEMPORARY FILENAME 56 100 1 0 0 1
    RMAN CONFIGURATION 1108 50 1 0 0 1
    .......

    2、基于备份文件的冗余数据数量的备份保留策略
    RMAN> CONFIGURE RETENTION POLICY TO REDUNDANCY n;
    取消备份保留策略:
    RMAN> CONFIGURE RETENTION PLOICY TO NONE;
    取消之后,使用REORT OBSOLETE和DELTE OBSOLETE命令不会显示任何信息。

    如果设置了备份保留策略,可通过REPORT OBSOLETE命令查看被标记为废弃的备份文件,然后DBA通过DELTE OBSOLETE命令删除这些文件以减小空间占用。
    RMAN对于手工删除的文件,物理上已经不存在,在执行了CROSSCHECK命令之后,RMAN将其标记为EXPIRED;对于那些超出备份保留策略的备份集备份片段,则标记为OBSOLETE;
    =================================
    备份通道
    通道其实就是一个到存储设备的数据流。说白了就是一个路径指向U盘,或是指向某一个文件夹,或是指向某一个分区,或是指向磁带等。
    手工分配通道的命令:ALLOCATE CHANNEL。
    如:
    RMAN> RUN{
    2> ALLOCATE CHANNEL C1 DEVICE TYPE DISK FORMAT 'D:ora_backupALCH_%U';
    3> BACKUP TABLESPACE USERS;
    4> }
    RMAN中每执行一条BACKUP、RECOVER等命令都至少需要使用一个通道,通道数量决定了这些操作的并行度。可用ALLOCATE CHANNEL命令指定多个通道。
    在RUN块中如果不使用RELEASE CHANNEL命令释放通过,则RMAN也会在RUN块中的任务执行完毕之后自动释放通道。
    如果没有通过ALLOCATE CHANNEL命令手工分配通道,则RMAN也会使用预定义配置中的设置来自动分配通道。
    ===============================
    启用复合备份
    在生成备份同时,向指定的位置生成指定份数的备份文件。
    RMAN中提供了三种方式实现Duuplexed方式备份:
    1.执行BACKUP命令时指定复合备份
    RAN> BACKUP COPIES 3 DATABASE;

    2.在RUN{}命令块中利用SET BACKUP COPIES命令指定复合备份
    RMAN> RUN{
    2> SET BACKUP COPIES 2;
    3> BACKUP DEVICE TYPE DISK FORMAT 'D:ora_backupALCH1_%U', 'D:ora_backup2ALCH2_%U'
    4> TABLESPACE USERS;
    5> }

    3.使用CONFIGURE 命令指定复合备份
    该方式公适用于数据文件和归档重做日志文件的备份,并且,只有在使用自动分配通道时才能该命令进行设置。
    RMAN> CONFIGURE DEFAULT DEVICE TYPE TO DISK.
    RMAN> CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE disk TO 2;
    RMAN> CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE disk TO 2;
    在创建数据文件和归档日志文件备份时,将自动生成2份备份集。
    ================================
    设置备份集的属性
    1.设置备份片段的文件名
    默认不使用FORMAT指定时为%F.
    RMAN> RUN{
    2> SET BACKUP COPIES 2;
    3> BACKUP DEVICE TYPE DISK FORMAT 'D:ora_backupALCH1_%U', 'D:ora_backup2ALCH2_%U'
    4> TABLESPACE USERS;
    5> }

    RMAN> BAKCUP TABLESPACE USERS FORMAT 'D:ora_backup est_bak%U';
    ===============================
    设置备份集标签
    备份时可以直接给备份集指定一个名称,RMAN管这个叫做TAG。
    默认格式为:TAGyyyymmddThhmmss,TAG和T是固定字符。
    RMAN> BAKCUP TABLESPACE USERS TAG TBS_USERBAK;
    ===============================
    设置备份片段/备份集的大小
    指定备份片段大小,参数MAXPIECESIZE:
    RMAN> RUN{
    2> SET BACKUP COPIES 2;
    3> BACKUP DEVICE TYPE DISK MAXPIECESIZE=10m FORMAT 'D:ora_backupALCH1_%U', 'D:ora_backup2ALCH2_%U'
    4> TABLESPACE USERS;
    5> }
    指定备份集大小,参数:MAXSETSIZE
    RMAN> BACKUP DATABASE MAXSETSIZE
    ===============================
    使用恢复目录
    如果不使用恢复目录,则RMAN的相关备份信息都保存在目标数据的控制文件中。但是控制文件并不能无限增长,因此最好使用恢复目录,将更加详细的信息保存在恢复目录中。
    强烈建议不要将恢复目录的数据建在目录数据库中。

    1.创建独立的表空间:
    SQL> CREATE TABLESPACE RMANTBS DATAFILE 'D:RMAN_CATALOG
    mantbs01.dbf' SIZE 1024M;
    表空间已创建。
    
    2.创建一个独立的SCHEMA,用来记录备份信息,并授予相关权限。
    SQL> GRANT CONNECT,RESOURCE,RECOVERY_CATALOG_OWNER TO RMANCT IDENTIFIED BY RNACT;
    
    授权成功。
    
    3.通过RMAN连接到新创建的恢复目录中:
    C:UsersAdministrator>RMAN CATALOG RMANCT/RMANCT
    恢复管理器: Release 11.2.0.1.0 - Production on 星期三 12月 17 23:29:42 2014
    Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
    连接到恢复目录数据库
    
    4.在RMAN中创建CATALOG
    RMAN> CREATE CATALOG TABLESPACE RMANTBS;
    恢复目录已创建
    -------
    恢复目录创建完成,一个恢复目录可同时为多个目标数据库提供服务。只需要把目标数据库注册进来即可。
    
    5.以CATALOG模式连接到目标数据库和恢复目录(如:目标数据库为ORACL)
    首先以CATALOG模式连接到目标数据库和恢复目录,连接恢复目录时只需要在连接时指定CATALOG参数即可。
    C:UsersAdministrator>RMAN TARGET / CATALOG RMANCT/RMANCT@ORCL;
    
    恢复管理器: Release 11.2.0.1.0 - Production on 星期三 12月 17 23:33:52 2014
    
    Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
    
    连接到目标数据库: ORCL (DBID=1392118573)
    连接到恢复目录数据库
    
    6.注册目标数据库
    RMAN> REGISTER DATABASE;
    
    注册在恢复目录中的数据库
    正在启动全部恢复目录的 resync
    完成全部 resync
    -----------
    取消注册为UNREGISTER DATABASE;

    ------------
    注意,如果连接时没有以CATALOG模式连接,则备份信息仍然只存入目标端数据库的控制文件。
    ======================================
    启用备份优化
    备份优化必须满足以下条件:
    CONFIGURE BACKUP OPTIMIZATION 参数置为ON。
    执行的BACKUP DATABASE或BACKUP ARCHIVELOG命令中带有ALL或LIKE参数。
    分配通道仅使用了一种设备类型,也就是不能同时分配使用SBT(磁带)与DISK的多个通道。
    -----------
    使用如下命令打开备份优化的设置:
    CONFIGURE BACKUP OPTIMIZATION ON;
    ====================================
    备份时对备份集进行压缩
    RMAN> BACKUP AS COMPRESSED BACKUPSET TABLESPACE SYSTEM;
    默认是不压缩的。
    ====================================
    启用加密备份
    RMAN> CONFIGURE ENCRYPTION FOR DATABASE ON;
    RMAN> CONFIGURE ENCRYPTION FOR TABLESPACE USERS ON;
    -----此后执行的备份均是加密备份。
    RMAN> CONFIGURE ENCRYPTION OFF;关闭加密备份。
    RMAN> SET ENCRYPTION ON IDENTIFYED BY rusky123 ONLY; ----为备份集指定一个密码,则恢复时恢复时必须使用该密码才能恢复。

  • 相关阅读:
    epoll oneshot
    回望五月
    都知道的copy_from_user
    ixgbe 驱动 为xxx驱动做准备1
    面试问题集锦
    数据治理
    阅读
    hive 数据仓库面试题目集锦
    面试小问题集锦
    Scala学习笔记~尚硅谷学习视频
  • 原文地址:https://www.cnblogs.com/rusking/p/4170783.html
Copyright © 2011-2022 走看看