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
------- ---------- ----------- ------------ ---------------
1410    326.36M    DISK        00:00:41     05-JAN-15
        BP Key: 1409   Status: AVAILABLE  Compressed: NO  Tag: TAG20150105T102705   -------------------->BP Key: 1409 

        Piece Name: F:\LOG_FIPRUSNS_1_1

  List of Archived Logs in backup set 1410
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    1191    23261014   25-DEC-14 23279746   26-DEC-14
  1    1192    23279746   26-DEC-14 23293125   03-JAN-15
  1    1193    23293125   03-JAN-15 23296401   03-JAN-15
  1    1194    23296401   03-JAN-15 23300534   03-JAN-15
  1    1195    23300534   03-JAN-15 23304302   03-JAN-15
  1    1196    23304302   03-JAN-15 23308204   03-JAN-15
  1    1197    23308204   03-JAN-15 23316571   03-JAN-15
  1    1198    23316571   03-JAN-15 23316578   03-JAN-15
  1    1199    23316578   03-JAN-15 23343180   04-JAN-15
  1    1200    23343180   04-JAN-15 23367540   05-JAN-15
  1    1201    23367540   05-JAN-15 23368004   05-JAN-15
  1    1202    23368004   05-JAN-15 23368006   05-JAN-15
  1    1203    23368006   05-JAN-15 23368009   05-JAN-15
  1    1204    23368009   05-JAN-15 23368011   05-JAN-15
  1    1205    23368011   05-JAN-15 23369315   05-JAN-15

RMAN> change  backuppiece 1409 uncatalog; -->uncatalog 的含义是删除在控制文件中的记录,对os上的备份文件不会动!(不会删除os上的备份文件)

uncataloged backuppiece
backup piece handle=F:\LOG_FIPRUSNS_1_1 recid=1409 stamp=868184831
Uncataloged 1 objects

RMAN> list backup of archivelog all;

让该备份文件回来的方法:

RMAN> catalog backuppiece 'F:\LOG_FIPRUSNS_1_1';

cataloged backuppiece
backup piece handle=F:\LOG_FIPRUSNS_1_1 recid=1413 stamp=868188578    ----->该命令可以多次执行,每次执行recid 加1

RMAN> catalog backuppiece 'F:\LOG_FIPRUSNS_1_1';

cataloged backuppiece
backup piece handle=F:\LOG_FIPRUSNS_1_1 recid=1414 stamp=868188598    ----->该命令可以多次执行,每次执行recid 加1

下面看catalog回来后BSkey 和BP Key 的变化:

RMAN> list backup of archivelog all;

中间略去很多,只保留下面的这个:

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
1410    326.36M    DISK        00:00:41     05-JAN-15     -------------------->BS Key: 1410 ,BS Key编号没变
        BP Key: 1414   Status: AVAILABLE  Compressed: NO  Tag: TAG20150105T102705------->BP Key: 1414 ,BP Key编号变了,加1

        Piece Name: F:\LOG_FIPRUSNS_1_1

  List of Archived Logs in backup set 1410
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    1191    23261014   25-DEC-14 23279746   26-DEC-14
  1    1192    23279746   26-DEC-14 23293125   03-JAN-15
  1    1193    23293125   03-JAN-15 23296401   03-JAN-15
  1    1194    23296401   03-JAN-15 23300534   03-JAN-15
  1    1195    23300534   03-JAN-15 23304302   03-JAN-15
  1    1196    23304302   03-JAN-15 23308204   03-JAN-15
  1    1197    23308204   03-JAN-15 23316571   03-JAN-15
  1    1198    23316571   03-JAN-15 23316578   03-JAN-15
  1    1199    23316578   03-JAN-15 23343180   04-JAN-15
  1    1200    23343180   04-JAN-15 23367540   05-JAN-15
  1    1201    23367540   05-JAN-15 23368004   05-JAN-15
  1    1202    23368004   05-JAN-15 23368006   05-JAN-15
  1    1203    23368006   05-JAN-15 23368009   05-JAN-15
  1    1204    23368009   05-JAN-15 23368011   05-JAN-15
  1    1205    23368011   05-JAN-15 23369315   05-JAN-15

下面测试backupset 从catalog中撤销:

RMAN> change  backupset 1410 uncatalog; ---------------------->backupset 不能用change uncatalog!!!

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of uncatalog command at 01/05/2015 14:14:31
RMAN-06122: CHANGE .. UNCATALOG not supported for BACKUPSET

RMAN> change  backupset 1410 delete; -->change backupset delete 的效果包括2个层面:删除在控制文件中的记录,删除os上的备份文件!

using channel ORA_DISK_1

List of Backup Pieces
BP Key  BS Key  Pc# Cp# Status      Device Type Piece Name
------- ------- --- --- ----------- ----------- ----------
1414    1410    1   1   AVAILABLE   DISK        F:\LOG_FIPRUSNS_1_1

Do you really want to delete the above objects (enter YES or NO)? yes
deleted backup piece
backup piece handle=F:\LOG_FIPRUSNS_1_1 recid=1414 stamp=868188598
Deleted 1 objects

RMAN>

----此时,os上的F:\LOG_FIPRUSNS_1_1这个文件已经被删除了。

若是在change backupset delete 之前,手工拷贝了该backuppiece,然后change backupset delete ,之后,想注册回来的方法是:

RMAN>  catalog backupset 'G:\LOG_FIPRUSNS_1_1';  -------------->没有catalog backupset这个命令。

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00558: error encountered while parsing input commands
RMAN-01009: syntax error: found "backupset": expecting one of: "archivelog, back
up, backuppiece, controlfilecopy, clone, datafilecopy, device, db_recovery_file_
dest, recovery, start"
RMAN-01007: at line 1 column 9 file: standard input

RMAN>  catalog backuppiece 'G:\LOG_FIPRUSNS_1_1'; ---> 跟上面一样的 catalog backuppiece 命令,只是换成了G盘下的。G盘下的该文件是事先手工拷贝出来的。

cataloged backuppiece
backup piece handle=G:\LOG_FIPRUSNS_1_1 recid=1415 stamp=868200682

下面查看BS Key 和BP Key

RMAN> list backup of archivelog all;

中间略去很多,只保留下面的这个:

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
1410    326.36M    DISK        00:00:41     05-JAN-15            ----------------->BS Key: 1410 ,BS Key编号一直没变。
        BP Key: 1415   Status: AVAILABLE  Compressed: NO  Tag: TAG20150105T10270--->BP Key: 1415 ,BP Key编号变了,加1了。

        Piece Name: G:\LOG_FIPRUSNS_1_1

  List of Archived Logs in backup set 1410
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    1191    23261014   25-DEC-14 23279746   26-DEC-14
  1    1192    23279746   26-DEC-14 23293125   03-JAN-15
  1    1193    23293125   03-JAN-15 23296401   03-JAN-15
  1    1194    23296401   03-JAN-15 23300534   03-JAN-15
  1    1195    23300534   03-JAN-15 23304302   03-JAN-15
  1    1196    23304302   03-JAN-15 23308204   03-JAN-15
  1    1197    23308204   03-JAN-15 23316571   03-JAN-15
  1    1198    23316571   03-JAN-15 23316578   03-JAN-15
  1    1199    23316578   03-JAN-15 23343180   04-JAN-15
  1    1200    23343180   04-JAN-15 23367540   05-JAN-15
  1    1201    23367540   05-JAN-15 23368004   05-JAN-15
  1    1202    23368004   05-JAN-15 23368006   05-JAN-15
  1    1203    23368006   05-JAN-15 23368009   05-JAN-15
  1    1204    23368009   05-JAN-15 23368011   05-JAN-15
  1    1205    23368011   05-JAN-15 23369315   05-JAN-15

RMAN>

总结:

1. change  backuppiece 1409 uncatalog; -->uncatalog 的含义是删除在控制文件中的记录,对os上的备份文件不会动!(不会删除os上的备份文件)
2. backupset 不能用change uncatalog!!backupset只能用下面的change delete!!!
3. change  backupset 1410 delete;      -->change backupset delete 的效果包括2个层面:删除在控制文件中的记录,删除os上的备份文件!
4. BP Key 这个会随着每次“ catalog backuppiece”的成功执行而递增,因此,BP Key不是保留在备份片中的。
5. BS Key 这个不会随着 每次“ catalog backuppiece”的成功执行而变化,因此,BS Key 是保留在备份片中的。
时间: 2024-10-06 22:22:01

Oracle Rman 中backuppiece 的uncatalog 和 backupset 的delete的相关文章

Oracle 11g 中恢复管理器RMAN介绍

这是我平时摘录的笔记,从管理艺术那本书上摘录出来的,放到这里 RMAN 可在数据库服务器的帮助下从数据库内备份数据文件,可构造数据文件映像副本.控制文件和控制文件映像.对当日志 SPFILE 和RMAN备份片的备份,建议使用RMAN界面备份数据库 RMAN好处: 1 增量备份 2 可联机修补数据文件的部分讹误数据块,不需要从备份文件复原文件 称为介质恢复 3 人为错误最小化 4 一条简单命令 BACKUP DATABASE即可 5 RMAN新的快比较特性允许在备份中跳过数据文件中从未使用的数据块

Oracle RMAN备份中catalog和nocatalog区别

nocatalog方式:用control file作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息,即RMAN的备份信息写在本地控制文件里面. catalog方式:必须要首先要创建目录备份数据库(catalog,也称知识库),建立恢复目录,即数据库的备份信息写到恢复目录里面. 当通过rman nocatalog方式备份Oracle数据库,Oracle使用controlfile存放RMAN的备份信息.因此,当使用Rman nocatalog方式备份

oracle rman恢复到异地、异机

原来的数据库服务器使用rman进行全库的备份,然后再异地的服务器上恢复一模一样的数据库 1.1      原服务器备份数据库 第一步,查看数据库的实例名和DBID connected to target database: DB3 (DBID=2060124769, not open) 第二步,进行全备份 backup AS COMPRESSED BACKUPSET database include current controlfile format '/orabak/db_%d_%T_%s'

ORACLE RMAN备份及还原 RMAN可以进行增量备份:数据库,表空间,数据文件

ORACLE RMAN备份及还原 RMAN可以进行增量备份:数据库,表空间,数据文件 只有使用过的block可以被备份成backup set 表空间与数据文件对应关系:dba_data_files / v$datafile_header 在noarchivelog模式下,可以使用RMAN备份read-only和offline的表空间 ORACLE RMAN停机备份: 备份 RMAN连接上ORACLE,WINDOWS下在命令模式下 RMAN TARGET / 连接本地数据库用的是本地认证模式.RM

使用rman中的duplicate复制数据库

目标库和复制库环境: OS: Linux Red Hat AS 4 DB Version: 10.2.0.1 1.目标库和复制库信息 Rman 中的目标库(target database)指的是被复制的库,复制库(duplicate database)是指复制后生成的新库.这里为了测试方便,复制库和目标库的目录结构设置相同. 目标库: IP:192.168.30.37 SID:oracl 复制库: IP:192.168.30.43 SID:oraclbak 2.在复制库上的的操作步骤 执行以下操

Oracle rman 命令总结

--登录rman  rman target /  rman target sys/passwork  rman target sys/passwork nocatalog   (控制文件方式)  rman target sys/passwork catalog     (恢复目录方式) --查看参数  show all --修改保存天数  用sqlplus修改备份信息在控制文件中保留的天数  show parameter control_file_record_keep_time alter s

Oracle RMAN 备份及不完全恢复(删除archievelog)

RMAN备份命令 backup Database format='/home/oracle/backup/bak_full_%U_%T' tag='bak_full'; sql 'alter system archive log current'; backup archivelog all tag='arc_bak' format='/home/oracle/backup/arch_%U_%T' delete input; backup current controlfile tag='bak

Oracle RMAN备份恢复指导书

目 录 1 目的与范围... 1 2 术语和定义... 1 3 角色和职责... 2 4 使用RMAN备份数据库... 2 4.1.1 检查数据库模式... 2 4.1.2 连接到target数据库... 3 4.1.3 查看备份信息... 3 4.1.4 备份数据库... 5 4.1.5 备份数据文件... 6 4.1.6 备份表空间... 6 4.1.7 备份控制文件... 6 4.1.8 备份归档日志文件... 7 4.1.9 备份闪回区... 8 4.1.10 增量备份... 8 4.2

ORACLE RMAN备份及还原(转)

RMAN可以进行增量备份:数据库,表空间,数据文件 只有使用过的block可以被备份成backup set 表空间与数据文件对应关系:dba_data_files / v$datafile_header 在noarchivelog模式下,可以使用RMAN备份read-only和offline的表空间 ORACLE RMAN停机备份: 备份 RMAN连接上ORACLE,WINDOWS下在命令模式下 RMAN TARGET / 连接本地数据库用的是本地认证模式.RMAN连接数据库必须在dedicat