如何使用Catalog命令注册R
有朋友问在Oracle 10G R2版本中:
只有原库数据文件的RMAN备份集(此备份集不包含控制文件,log,参数文件等等,单纯只有数据库的所有数据文件的备份集),主库废了(可以理解为机房所在地地震了)。
现在要求在新实例中恢复这个RMAN的数据文件备份集。
1。原数据库的表空间名称,数据文件结构\名称\数量--未知。
2。原数据文件的FILE#也许是不连续的。(可能5号文件后6。7。8都空闲,然后是9号数据文件。 )
这样说吧,可以说你对原数据库一无所知。
我试过dbms_backup_restore抽取RMAN备份集中数据文件,再建立控制文件,确实可以恢复但,这个方法有局限性,...全部
有朋友问在Oracle 10G R2版本中:
只有原库数据文件的RMAN备份集(此备份集不包含控制文件,log,参数文件等等,单纯只有数据库的所有数据文件的备份集),主库废了(可以理解为机房所在地地震了)。
现在要求在新实例中恢复这个RMAN的数据文件备份集。
1。原数据库的表空间名称,数据文件结构\名称\数量--未知。
2。原数据文件的FILE#也许是不连续的。(可能5号文件后6。7。8都空闲,然后是9号数据文件。
)
这样说吧,可以说你对原数据库一无所知。
我试过dbms_backup_restore抽取RMAN备份集中数据文件,再建立控制文件,确实可以恢复但,这个方法有局限性,不够完美。
抽取的时候需要指明FILE#,NEW_DATAFILE_NAME。
。。
可以说抽取是尝试的抽取。FILE#=5,6,7这样一个一个的尝试,这就对多数据文件的库很麻烦,而且文件号不连续会报错停止抽取动作。下一条抽取动作就无法继续执行。要手动关闭通道后再次抽取。
迫切的想知道如何查出RMAN的备份集中的数据文件信息。
想知道如何收集全建立出支持这个备份集的控制文件。
我们知道Oracle10g丰富了catalog命令,使用这个命令,可以将RMAN的备份集注册到控制文件(或者目录数据库中)
类似的一系列命令有:
CATALOG ARCHIVELOG '?/oradata/archive1_30。
dbf', '?/oradata/archive1_31。dbf',
'?/oradata/archive1_32。dbf';
CATALOG DATAFILECOPY '?/oradata/users01。
bak' LEVEL 0;
CATALOG START WITH '/tmp/arch_logs';
CATALOG RECOVERY AREA NOPROMPT;
CATALOG BACKUPPIECE '?/oradata/01dmsbj4_1_1。
bcp';
但是注意这些命令是有限制的,其中的一个限制是不能注册备份文件到不同的数据库:
You cannot use CATALOG to catalog a file that belongs to a different database。
也就是说你至少还需要原数据库的控制文件。
否则就会出现类似如下的错误:
[oracle@standby ~]$ rman target /
Recovery Manager: Release 10。
2。0。1。0 - Production on Thu May 22 01:02:56 2008
Copyright (c) 1982, 2005, Oracle。 All rights reserved。
connected to target database (not started)
RMAN> set dbid=1490303982
executing command: SET DBID
RMAN> startup mount;
Oracle instance started
database mounted。
收起