如何在新数据库服务器上导入Oracle 11g RMAN备份集?

时间:2010-11-18 09:54:29

标签: oracle import backup oracle11g rman

我有一个使用RMAN创建的Oracle 11g数据库的备份集。现在我想将备份集导入/恢复到新的空数据库服务器上。我知道创建备份集的命令是

run {
  backup as compressed backupset database
  tag "FULLBACKUP"
  format "/orabackup/rman/backup/FULL_%d_%T_%U";
  backup as compressed backupset archivelog all
  tag "ARCHIVELOGS"
  format "/orabackup/rman/backup/ARCH_%d_%T_%U"
  delete all input;
}

但我无法找到如何在我的新数据库服务器上为RMAN知道此命令生成的文件,并使用RESTORE / RECOVER导入备份集。

2 个答案:

答案 0 :(得分:1)

我从来没有使用过这个工具,但我会谷歌几分钟,也许这会对你有所帮助......

直接链接:RMAP Import

Here is the script I use to restore the database from the backup, (I always clean up the database before restoring it.)

* Startup nomout;
* Set dbid xxxxxxxx // This is the dbid of your database
* Run {
Set controlfile autobackup format for device type disk to ''; // e.g. '/ora101/oradata/TAR/%F'
Restore controlfile from autobackup;
}
* Alter database mount; // can't restore without the database mounted
* Restore database; // can't run recover without first restore
* Recover database; // if the backup was from incremental, RMAN will try to apply all the logfiles generated after the backup was started.
* Alter database open resetlogs; 

//编辑:这是OraFaq的另一个链接。

答案 1 :(得分:0)

另一种使用方法是从备份中恢复控制文件。

启动无挂载;

运行{   分配通道设备类型磁盘;   从'/ u01 / ......'恢复; }

此时我会关机并启动mount。 (确保pfile / spfile具有控制文件名称和位置的正确条目)

在安装模式下输入命令

目录以'/ u01 / .....'开头(控制文件备份应该是一个好的起点)

系统将询问您是否要添加文件中的信息。对于你拥有的任何后备,这也可以重复。

现在,如果您执行列表备份,您应该看到来自orignal rman备份的所有项目,然后开始恢复/恢复数据库的过程。

免责声明:这些命令是从内存中获取的,因此语法可能不是100%正确,但快速谷歌可以让你走上正确的轨道。

编辑:

要重命名数据文件,您需要发现此命令很有用。它将数据文件放入ASM,但你应该能够通过用正确的数据文件名和位置替换+ DATA来实现另一种方式

运行 {

将数据文件1的新名称设置为“+ DATA”;

将数据文件2的newname设置为“+ DATA”;

将数据文件3的新名称设置为“+ DATA”;

将数据文件4的新名称设置为“+ DATA”;

将数据文件5的新名称设置为“+ DATA”;

恢复数据库;

切换数据文件全部;

恢复数据库

}