我正在尝试将 RMAN 备份恢复到不同的服务器。我需要一些澄清/指导。
这是数据库 1 中数据文件的位置:
/u01/app/oracle/oradata/db1/datafile
这是数据库 2 中数据文件的位置:
/u01/app/oracle/oradata/db2/datafile
我已经从数据库1进行了备份,我想将其恢复到数据库2;我已经使用scp命令将rman备份发送到另一台服务器,我想恢复数据库。pfile 中用于恢复的数据文件的位置是否应该有任何更改?
我正在尝试将 RMAN 备份恢复到不同的服务器。我需要一些澄清/指导。
这是数据库 1 中数据文件的位置:
/u01/app/oracle/oradata/db1/datafile
这是数据库 2 中数据文件的位置:
/u01/app/oracle/oradata/db2/datafile
我已经从数据库1进行了备份,我想将其恢复到数据库2;我已经使用scp命令将rman备份发送到另一台服务器,我想恢复数据库。pfile 中用于恢复的数据文件的位置是否应该有任何更改?
尝试在目标中使用这些初始化参数文件设置:
更多信息请参见:https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/DB_FILE_NAME_CONVERT.html#GUID-E8B4E0EA-B073-4349-9EA9-E053F499FB9E本文档在将数据库复制到备用数据库的上下文,但是 IIRC 这在恢复到独立主实例时也应该起作用。
Burleson Consulting 提供了一些信息,其中包含使用不同方法(备份恢复、复制等)克隆数据库的示例。 http://www.dba-oracle.com/t_rman_77_cloning_remote_host.htm
如果您想将其全部保留在 RMAN 中,另一个选择是使用 SET NEWNAME。Oracle Doc ID 549972.1对此进行了详细介绍。缺点是您必须为数据库中的每个文件指定 SET NEWNAME。为了使这更容易一些,您可以通过使用以下命令获取数据库中的文件列表来部分自动化此操作
并将其假脱机到文件中。然后在文件中执行搜索/替换以更新路径,并将生成的命令添加到 RMAN 脚本中以恢复目标服务器上的数据库。
OMF 可能会使这个问题变得复杂,因为 Oracle 会为您管理这些内容(因此您为了方便而放弃了一些控制权)。我一直严格要求保持路径相同,这样我就不会遇到麻烦,所以如果您使用 OMF,这可能不会 100% 对您有用(但这应该是朝着正确方向迈出的一步)。