RMAN增量备份-备份保留策略-设置备份集属性

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

C:\Users\Administrator>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;

启动 backup 于 17-12月-14
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=184 设备类型=DISK
通道 ORA_DISK_1: 正在启动增量级别 0 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00001 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF
输入数据文件: 文件号=00002 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF
输入数据文件: 文件号=00005 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF
输入数据文件: 文件号=00003 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF
输入数据文件: 文件号=00004 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 17-12月-14
通道 ORA_DISK_1: 已完成段 1 于 17-12月-14
段句柄=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2014_12_17\O1_MF_NNND0_TAG20141217T214527_B9327SYF_.BKP 标记=TAG20141217T214527 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:02:52
完成 backup 于 17-12月-14

启动 Control File and SPFILE Autobackup 于 17-12月-14
段 handle=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\AUTOBACKUP\2014_12_17\O1_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:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.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_backup\ALCH_%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_backup\ALCH1_%U‘, ‘D:\ora_backup2\ALCH2_%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_backup\ALCH1_%U‘, ‘D:\ora_backup2\ALCH2_%U‘
4> TABLESPACE USERS;
5> }

RMAN> BAKCUP TABLESPACE USERS FORMAT ‘D:\ora_backup\test_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_backup\ALCH1_%U‘, ‘D:\ora_backup2\ALCH2_%U‘
4> TABLESPACE USERS;
5> }
指定备份集大小,参数:MAXSETSIZE
RMAN> BACKUP DATABASE MAXSETSIZE
===============================
使用恢复目录
如果不使用恢复目录,则RMAN的相关备份信息都保存在目标数据的控制文件中。但是控制文件并不能无限增长,因此最好使用恢复目录,将更加详细的信息保存在恢复目录中。
强烈建议不要将恢复目录的数据建在目录数据库中。

1.创建独立的表空间:
SQL> CREATE TABLESPACE RMANTBS DATAFILE ‘D:\RMAN_CATALOG\rmantbs01.dbf‘ SIZE 1024M;
表空间已创建。

2.创建一个独立的SCHEMA,用来记录备份信息,并授予相关权限。
SQL> GRANT CONNECT,RESOURCE,RECOVERY_CATALOG_OWNER TO RMANCT IDENTIFIED BY RNACT;

授权成功。

3.通过RMAN连接到新创建的恢复目录中:
C:\Users\Administrator>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:\Users\Administrator>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; ----为备份集指定一个密码,则恢复时恢复时必须使用该密码才能恢复。

时间: 2024-10-25 06:43:52

RMAN增量备份-备份保留策略-设置备份集属性的相关文章

Rman备份的保留策略(retention policy)

什么是备份的保留策略(retention policy) 保留策略就是指某份备份是否要保留以及保留多久.可以使用configure retention policy命令来创建一个一致的.自动的备份保留策略. 当一个备份策略生效后,rman就认为数据文件.控制文件的备份是obsolete的,也就是说根据用户配置,不再需要这些备份进行恢复.用户可以使用report obsolete命令找出obsolete的文件并使用delete obsolete将其删除. 随着备份次数的增加,老的备份文件会变得ob

【转载】RMAN备份保留策略设置相关命令

转自 http://blog.sina.com.cn/s/blog_7c5a82970101g4s7.html 策略有两种,一种是基于恢复窗口策略的,一种是基于冗余策略的. 基于恢复窗口策略: 定义的是保留的备份文件必须要能保证恢复到近N天的任意时间点. CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 14 DAYS; 让恢复窗口成为14天大小. 基于冗余策略: 定义的是每个文件至少要保留几份备份. CONFIGURE RETENTION POL

RMAN兼容性、控制文件自动备份、保存时间、备份策略、备份脚本(二)

RMAN 程序的兼容性 RMAN 环境由以下5部分组成:(1) RMAN executable(2) Recovery catalog database(3) Recovery catalog schema in the recovery catalog database(4) Target database(5) Auxiliary database (used forduplicate, duplicate for standby or tablespace point-in-time re

【转】在rman增量备份中,有差异增量和累积增量的概念

本文转自hougoo的博客 1.概念 差异增量:是备份上级及同级备份以来所有变化的数据块,差异增量是默认增量备份方式 累积增量:是备份上级备份以来所有变化的块 因为累积增量是备份上级备份以来所有变化的数据块,所以累积增量需要更多的备份时间,同时需要较小的恢复时间:而差异增量正好相反,它可以备份同级备份以来变化的数据块.所以会减少备份时间,但需要更多的恢复时间.在oracle 9中增量备份需要通过扫描整个数据库的数据块才能知道哪些数据块发生了变化,这是一个代价很大,时间很长的过程,而且由于增量备份

[原创]Oracle 12c的备份和恢复策略

Oracle 12c的备份和恢复策略(RMAN备份[开启归档/控制文件/数据文件/归档日志]): 备份策略: * 每半年做一个数据库的全备份(包括所有的数据和只读表空间) * 每周做一次零级备份 * 每天做一次一级备份 *备份前设置rman的参数:configure controlfile autobackup on;(RMAN> show all;查看参数) --crontab定时任务: 0 1 1 1,7 * oracle /bin/bash /data/oracle/backup/rman

RMAN详细教程(二):备份、检查、维护、恢复

RMAN详细教程(一):基本命令代码 一.创建增量备份 增量备份级别为0-4,但为方便备份管理,oracle建议只限于0级和1级. 1.差异增量备份(differential incremental backup)(默认): 每次备份至上一次备份级别小于等于当前级别的备份. 2.累计增量备份(cumulative incremental backup): 1)每次备份至上一次小于当前级别的备份: 2)增量备份需要先进行一次0级备份,作为备份的起点. 3.增量备份例子: backup increm

通过程序实现组策略的备份

组策略编辑器是系统个性化的一个常用的方式.但是它没有提供备份手段,导致我们在换新机器或重装系统的时候,需要重新手动配置,如果修改的策略比较多的时候是一件比较麻烦的事情. 组策略本身的数据还是存储在注册表中,理论上我们只需要获取组策略编辑器对注册表的修改,然后通过程序实现同样的注册表修改行为,即可实现组策略的备份.周末的时候按照这个思路研究了下如何自己写程序实现组策略的编辑. 监控组策略的行为 组策略的启动方式是"gpedit.msc",但他实际上的进程是mmc.exe,我们可以通过Pr

Percona Xtrabackup备份mysql大数据库(完整备份与增量备份)

Percona Xtrabackup备份mysql大数据库(完整备份与增量备份) 文章目录 [隐藏] Xtrabackup简介 Xtrabackup安装 Xtrabackup工具介绍 innobackupex使用方法 完整备份及还原 增量备份及还原 Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对InnoDB和XtraDB存储引擎的数据库非阻塞地备份(对于MyISAM的备份同样需要加表锁).XtraBackup支持所有的Percona

【荐2】Total Commander 7.57 配置选项 个性化设置备份,,,开启时如何自动最大化???(二)

最近安装了下新版的“Total Commander 7.56”,发现它的默认设置是如此的不好用,现把对其个性化设置备份如下(符合大部分用户的操作习惯): 默认打开Total Commander 7.56,该软件非最大化,要想使其开启时最大化,操作如下: 第一步:单击右上角按钮,使其最大化状态: 第二步:“配置” --> “保存位置”:“配置” --> “保存设置” ,下次启动时,即可自动最大化. 外观: 显示: 图标: 字体: 颜色: 制表符: 文件夹标签: 自定义列: 语言: 操作方式: 编