Chinaunix首页 | 论坛 | 博客
  • 博客访问: 9375684
  • 博文数量: 1669
  • 博客积分: 16831
  • 博客等级: 上将
  • 技术积分: 12594
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-25 07:23
个人简介

柔中带刚,刚中带柔,淫荡中富含柔和,刚猛中荡漾风骚,无坚不摧,无孔不入!

文章分类

全部博文(1669)

文章存档

2023年(4)

2022年(1)

2021年(10)

2020年(24)

2019年(4)

2018年(19)

2017年(66)

2016年(60)

2015年(49)

2014年(201)

2013年(221)

2012年(638)

2011年(372)

分类: Oracle

2011-12-05 16:18:06

RMAN, 保留策略 retention policy,累积增量备份和差异增量备份,备份策略
366人阅读 评论(0) 举报

 

一、保留策略 retention policy

. 配置默认的保存策略 ( Retention Policy)

保存策略是管理备份与副本有效期或者是否有效的一种方法。恢复数据库的时候

Oracle 不考虑失效的备份。我们可以定义两种保存策略:恢复窗口备份保存策略

recovery window backup retention policy )和冗余备份保存策略(redundancy backup

retention policy

备份策略保持 分为两个保持策略:

一个是时间策略,决定至少有一个备份能恢复到指定的日期

一个冗余策略,规定至少有几个冗余的备份。

恢复窗口备份保存策略

这种保存策略类型的使用基于数据库可能恢复到的最早的日期。 例如,假设今天

是星期一,此前存在 3 个备份。第一个备份在昨天生成的,第二个备份是上星期四生

成的,而最后一个备份是 10 天前备份的。假如恢复窗口是 7 天,那么昨天和上星期

四的备份是有效备份,而 10 天前的备份会成为废弃备份。下面的命令将恢复窗口配置7 天:

RMAN> configure retention policy to recovery window of 7 days;

冗余备份保存策略

使用这种保存策略,RMAN 会从最新备份开是保留 N 个数据备份,其余的废弃。

例如,如果有四个备份,而冗余数是 3,那么最早的那个备份将被废弃。下面的命令将

备份策略设置为 3

RMAN> configure retention policy to redundancy 3;

设置NONE 可以把使备份保持策略失效,Clear 将恢复默认的保持策略

RMAN> configure retention policy to none;

例:

保证至少有一个备份能恢复到 Sysdate-5 的时间点上,之前的备份将标记为

Obsolete

RMAN> configure retention policy to recovery window of 5 days;

至少需要有三个冗余的备份存在,如果多余三个备份以上的备份将标记为冗余

RMAN> configure retention policy to redundancy 5;

 

 

二、增量备份两种方式:累积增量备份和差异增量备份

 

Incremental Backups

Incremental backups copy only those blocks that have changed since a previous backup. A level 0 incremental backup captures all data blocks in a datafile. Level 1 incremental backups capture changes since a previous backup. Level 1 backups can be cumulative, in which case they capture changes since the last level 0 incremental backup, or differential, in which case they capture changes since the last level 0 or level 1 incremental backup.

上面是Oracle对增量备份的描述,可以看出来,只有1级备份有累积备份和差异备份,1级累积备份只备份上一次0级备份后改变的数据,1级差异备份则备份上次0级或1级备份后改变的数据.

 

 

--fromOracle Database 10g OCP Certification All-in-One Exam Guide OCP认证考试指南全册.pdf

Incremental backups come in three forms. An incremental level 0 backup isn’t incremental at all.

Level 0 means a full backup, which will contain every used datafile block. The difference comes with subsequent incrementals: a full backup can’t be used as the base for a level 1 backup. A differential level 1 backup, which is the default type of incremental, contains only data blocks modified since the last incremental level 1 backup (cumulative or differential), or blocks modified since the last level 0 backup if there has not been an intervening level 1 backup. A cumulative level 1 incremental backup will contain only the blocks modified since the last level 0 backup.

差异1级增量备份,是default的,备份上一次level1的(差异或累积备份)或者上一次0级的(如果中间没有level1的);累积增量只备份上次level0以后的。

 

 

 

引用 7 woweigekuang80 的回复:
你们所说的那些都没有说到重点,我现在知道差异增量和累积增量是什么意思,但是这两种增量前面加了级别,我就搞不清楚了,比如说:
        1.
一级差异增量
          2.
一级累积增量
          3.
二级差异增量
          4.
二级累积增量

前面加了级别我就搞不清楚了,谁能具体说说?



cumulative(累计增量)  
寻找n-1或者更小
对于累积增量:
每次备份,从这个时间点往前寻找,比如说你是2级累积增量备份,那么就备份从最近一次1级备份以来改变的数据.

differential差异增量
寻找n或更小
每次备份,从备份的时间点往前寻找,比如说你是2级差异备份,备份从最近一次2级备份以来改变的数据.
如果最近一次备份是1级而不是2及的怎么办?
根据"寻找n或更小" 这个原则来处理.它就从最近的1级备份来做增量备份了.

差异和cumulative什么区别?
可以发现了,差异备份需要从本级备份,cumulative必须从前一级备份找起.
那么,哪个备份占用的空间更多呢?
cumulative级别备份,而数据库默认的增量备份不是这个级别,而是差异备份.
明白了吧

 

三、关于Rman备份策略:

 

       RMAN优于手工备份的一点就是支持增量备份,这使得VLDB的备份变得更加轻松。分为差异增量备份和累积增量备份两种。差异增量备份自上一次同级或更低级别备份以来的变化,累计增量备份自上一次更低级别备份以来的变化。

 

      基于备份信息保存周期和增量备份的使用,采用如下的RMAN备份策略:

          1. 星期日0级全备---利用相对空闲时段完成RMAN全备

         2. 星期一1级差异增量备份

       3. 星期二1级累积增量备份

      4. 接下来增量和差异相互交替,以期在发生故障时采用最少的备份文件来恢复数据库

 

     

---案例研究:

AAA10:15:39

帮忙看下:

执行增量备份:

星期36 执行0级备份;

星期12457执行1级备份;

我保存策略是01天的,12

假如今天是星期4执行完了1级备份了,星期1,星期2,上哥星期7,上个星期六的0级备份,都不会过期的是吗

 

CCCCC10:19:26

过不过期就是在report obsolete或者delete obsolete才判断,平常都是有效的

 

AAA10:20:21

我在脚本执行了delete noprompt obsolete;

是不是就会把星期1和星期2的删除了呢

是累计增量的

DDDDD 10:21:55

是的

 

BBBB10:22:56

你的备份策略不是保留2天前的吗,如果你2天前的备份是1级增量,那么这个增量之前的0级备份也不会过期,哪怕这个0级备份已经超过2天了

AAA10:24:40

我的1级备份是保留2天的。

BBBB10:29:01

我建议你保存策略直接在RMANCONFIGURE里设置为2

AAA10:29:51

嗯。我刚接这个数据库,以前是他们这么备的,我对这个策略很模糊。

BBBB10:30:50

这样设置01天保存,根本没效果的,因为1级的要有效,必须保留0级的,所以0级的保存时间肯定不只1

0级备份要过期,必须要等到这个备份之后、下个0级备份之前的所有1级备份都过期才行

AAA10:34:21

哦,那要看1级备份到底有没有过期,如果过期了,0级别才会过期啊

 

BBBB10:43:51

是啊,不然你只靠那个1级备份,恢复不到那一天啊

AAA10:50:54

星期36 执行0级备份;

星期12457执行1级备份;

我保存策略是01天的,12

假如今天是星期4执行完了1级备份了,由于保存策略我2天,那么星期2的一级备份会判断为未过期,=》星期一也不过期=》星期天也不过期=》星期六0级备份也不过期。可以这么理解吗

BBBB) 10:57:04

是啊

AAAAAA) 10:58:11

o .哈哈。谢谢。

 

---我的backup策略:

----------level1 每周日,1:00

RUN

{

    CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS; 

    CONFIGURE CONTROLFILE AUTOBACKUP ON;

    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'D:/oracle/product/10.2.0/flash_recovery_area/FFDW/RMAN_BKP_FFDW_CONTROLFILE_%D_%F';

    ALLOCATE CHANNEL CH1 DEVICE TYPE DISK FORMAT 'D:/oracle/product/10.2.0/flash_recovery_area/FFDW/RMAN_BKP_FFDW_datafile_%T_%d_%U.dbf';

    set limit channel CH1 kbytes 2097152;

    backup incremental level 0 database plus archivelog delete input;

    CROSSCHECK BACKUPSET;

    RELEASE CHANNEL CH1;

}

ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK;

CROSSCHECK BACKUPSET;

DELETE NOPROMPT OBSOLETE;

 

---------1级,每天2

RUN

{

    CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS; 

    CONFIGURE CONTROLFILE AUTOBACKUP ON;

    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'D:/oracle/product/10.2.0/flash_recovery_area/FFDW/RMAN_BKP_FFDW_CONTROLFILE_%D_%F';

    ALLOCATE CHANNEL CH1 DEVICE TYPE DISK FORMAT 'D:/oracle/product/10.2.0/flash_recovery_area/FFDW/RMAN_BKP_FFDW_datafile_%T_%d_%U.dbf';

    set limit channel CH1 kbytes 2097152;

    backup incremental level 1 cumulative database plus archivelog delete input;

    CROSSCHECK BACKUPSET;

    RELEASE CHANNEL CH1;

}

ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK;

CROSSCHECK BACKUPSET;

DELETE NOPROMPT OBSOLETE;

 

 

 

 

参考:

http://www.itpub.net/thread-1133247-1-1.html

 

阅读(1571) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~