RMAN 中delete exipired 和 delete obsolete 的区别

elete expired

If you run CROSSCHECK, and if RMAN cannot locate the files, then it updates their records in the RMAN repository to EXPIRED status. You can then use the DELETE EXPIRED command to remove records of expired backups and copies from the RMAN repository.

delete obsolete

The RMAN DELETE command supports an OBSOLETE option, which deletes backups that are no longer needed to satisfy specified recoverability requirements. You can delete files obsolete according to the configured default retention policy, or another retention policy that you specify as an option to the DELETE OBSOLETE command. As with other forms of the DELETE command, the files deleted are removed from backup media, deleted from the recovery catalog, and marked as DELETED in the control file.

delete expired删除的是那些本来RMAN以为存在但是实际上在磁盘或者磁带上已经被删除了的信息,删除的只是RMAN资料库中的记录;delete obsolete则删除旧于备份保留策略定义的备份数据同时也更新RMAN资料库以及控制文件。

===============================================================

EG:

#delete obsolete and expired backup and archivelog
run {
delete noprompt obsolete;
crosscheck archivelog all;
delete noprompt expired archivelog all;
crosscheck backup;
delete noprompt expired backup;
}

参考博文:http://blog.itpub.net/28389881/viewspace-2076338/

原文地址:http://blog.51cto.com/linux10000/2105239

时间: 2024-12-13 05:01:14

RMAN 中delete exipired 和 delete obsolete 的区别的相关文章

Rman 中 Backupsets and Images copy的概念区别

备份集 概念(backup set): Oracle默认的备份类型,把数据文件中已经使用过的数据块备份到一个或多个文件中,这样的文件叫做"备份片",所有备份出来的文件组合成为"备份集".备份集与备份片的关系类似于表空间与数据文件的关系,备份集是一个逻辑概念,将备份片(物理文件)逻辑地组织在一起.一般来说一个通道会产生一个备份集,比如启动了3个通道,那么每个通道负责生成一个备份集,不过如果启动了控制文件自动备份,那么控制文件所在的备份文件会单独生成一个备份集,不会与数

Oracle Rman 中backuppiece 的uncatalog 和 backupset 的delete

本文是原创文章,转载请注明出处:http://write.blog.csdn.net/postedit/42424083 本文基于Oracle 10.2.0.4版本进行如下的测试: RMAN> list backup of archivelog all; 中间略去很多,只保留下面的这个: BS Key Size Device Type Elapsed Time Completion Time ------- ---------- ----------- ------------ --------

oracle中delete drop truncate的用法和区别

数据库的运维中,经常会遇到delete drop truncate的操作,那么如何去把握它们的用法和区别呢? 比如当数据库空间爆满,已经增长到存储空间单个存储文件的最大值32G.你需要通过一些办法释放掉表空间或者扩容表空间来解决问题. 一般当系统中大量使用分区表,而针对分区表清除数据,是不会释放表空间的,必须把分区drop掉,才会释放空间. 下面我们具体了解一下这三个命令: 一.delete 1.delete是DML,执行delete操作时,每次从表中删除一行,并且同时将该行的的删除操作记录在r

oracle中delete、truncate、drop的区别

oracle中delete.truncate.drop的区别 标签: deleteoracletable存储 2012-05-23 15:12 7674人阅读 评论(0) 收藏 举报  分类: oracle(2)  版权声明:本文为博主原创文章,未经博主允许不得转载. 一.delete 1.delete是DML,执行delete操作时,每次从表中删除一行,并且同时将该行的的删除操作记录在redo和undo表空间中以便进行回滚(rollback)和重做操作,但要注意表空间要足够大,需要手动提交(c

sql server 中删除表中数据truncate和delete的区别(转载自.net学习网)

我们都知道truncate table可以用来删除整个表的内容,它与delete后面不跟where条件的效果是一样.但除此之外,我们还清楚它们之间有其它的区别吗?本章我们将一起讨论truncate与delete区别. 我们先看一下truncate table的说明:删除表中的所有行,而不记录单个行删除操作.TRUNCATE TABLE在功能上与没有WHERE子句的DELETE语句相同:但是,TRUNCATE TABLE速度更快,使用的系统资源和事务日志资源更少. truncate table的语

c++中的new 和delete

new是用来动态申请内存空间的C++中的一个关键字.delete是用来删除new所申请空间对象的. 想深入理解new请看:http://blog.csdn.net/songthin/article/details/1703966 delete p和delete [] p的区别: 1.int* p = new int(20); delete p; 2.int*p = new int[10]();//数组带初始化 delete [] p; 从上面两个小例子,可以看出delete p 用来删除单个元素

【转】浅谈 C++ 中的 new/delete 和 new[]/delete[]

原文 在 C++ 中,你也许经常使用 new 和 delete 来动态申请和释放内存,但你可曾想过以下问题呢? new 和 delete 是函数吗? new [] 和 delete [] 又是什么?什么时候用它们? 你知道 operator new 和 operator delete 吗? 为什么 new [] 出来的数组有时可以用 delete 释放有时又不行? - 如果你对这些问题都有疑问的话,不妨看看我这篇文章. new 和 delete 到底是什么? 如果找工作的同学看一些面试的书,我相

oracle 中删除表 drop delete truncate

oracle 中删除表 drop delete truncate 相同点,使用drop delete truncate 都会删除表中的内容 drop table 表名 delete from 表名(后面不跟where语句,则也删除表中所有的数据) truncate table 表名 区别 首先delete 属于DML,当不commit时时不生效的 而truncate 和 drop 则是直接生效的,不能回滚. truncate 和 delete 不删除表的结构,只是针对表中的内容删除 drop语句

Oracle中的Truncate和Delete语句

Oracle中的Truncate和Delete语句 首先讲一下,truncate命令: 语法:TRUNCATE  TABLE  table; 表格里的数据被清空,存储空间被释放. 运行后会自动提交,包括之前其它未提交的会话,因而一旦清空无法回退. 只有表格的创建者或者其他拥有删除任意表格权限的用户(如DBA)才能清空表格. TRUNCATE  TABLE  dept30; Table truncated. ---------------------------------------------