笔者碰到这种情况,Oracle 11g数据库之前用NBU进行备份,后来不用了,NBU服务器删除掉了。简单使用RMAN将Oracle备份到磁盘。但是之前的备份集信息却一直残余,不能删除。
实用命令:
RMAN>delete obsolete
时报错如下:
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of delete command at 05/07/2008 22:04:21
RMAN-06091: no channel allocated for maintenance (of an appropriate type)
no channel allocated for maintenance (of an appropriate type)错误意味着没有分配合理的通道连接Media Management Layer (MML)。因为之前备份到NBU都是以磁带通道的方式,现在RMAN备份都是分配的磁盘通道,通道类型不匹配,所以不能删除。
如果需要删除的话,可以使用一些小技巧,使用磁盘设备模拟磁带设备。这样欺骗RMAN,让其认为有一个活动的MML。从而可以进行删除。
RMAN> allocate channel for maintenance device type sbt
parms ‘SBT_LIBRARY=oracle.disksbt, ENV=(BACKUP_DIR=/tmp)’;
然后使用命令删除残余备份集
RMAN>delete obsolete
本文转自 川流信息 51CTO博客,原文链接:http://blog.51cto.com/tech4fei/2044895