Oracle RMAN大端到小端

Oracle RMAN大端到小端,oracle,endianness,rman,Oracle,Endianness,Rman,我有一个Oracle RMAN备份,它是在Solaris SPARC机箱上创建的,因此是big-endian格式。我希望将此备份还原到基于Windows x86-64的计算机,但由于endianness问题遇到了障碍 我在维基百科上读到,不可能对文件的结尾进行一般转换,因为二进制文件中存储的变量的长度未知,我可以理解 我发现RMAN将使用convert命令转换数据文件或表空间的ENDIANESS,但是要做到这一点,我必须将数据文件放在适当的位置,这意味着必须已经从控制文件进行了恢复(它是big-

我有一个Oracle RMAN备份,它是在Solaris SPARC机箱上创建的,因此是big-endian格式。我希望将此备份还原到基于Windows x86-64的计算机,但由于endianness问题遇到了障碍

我在维基百科上读到,不可能对文件的结尾进行一般转换,因为二进制文件中存储的变量的长度未知,我可以理解

我发现RMAN将使用convert命令转换数据文件或表空间的ENDIANESS,但是要做到这一点,我必须将数据文件放在适当的位置,这意味着必须已经从控制文件进行了恢复(它是big-endian,所以甚至不能这样做)。下面的内容似乎表明这是不可能的,我必须首先使用正确的endian来创建控制文件

我知道我可以将上面的RMAN备份导入到Solaris SPARC机器上,然后执行exp/imp过程,但我真正感兴趣的是实现一台机器的恢复过程

有人能建议一条实现我所追求的目标的途径吗即,;从Solaris SPARC系统恢复到小端Win32 x86-64平台的大端RMAN备份?

查看《Oracle®数据库备份和恢复高级用户指南》第15章“RMAN跨平台可传输数据库和表空间”

似乎CONVERT是您正在寻找的工具,但您需要将其与可传输表空间结合使用。

查看《Oracle®数据库备份和恢复高级用户指南》第15章“RMAN跨平台可传输数据库和表空间”


似乎CONVERT是您正在寻找的工具,但您需要将其与可传输表空间结合使用。

我已经阅读了《Oracle数据库备份和恢复高级用户指南》第15章,没有什么是可行的选项。CONVERT DATAFILE命令似乎是最合适的,但这假设您首先可以访问数据文件,正如我所说的,这些数据文件包装在RMAN备份中,因此它们位于多个备份“片段”中。有鉴于此,我想到的另一个选项是在windows计算机上执行RMAN还原,然后转换生成的数据文件,但RMAN无法识别控制文件,因为我怀疑它是big-endian格式

从CONVERT datafiles命令还原数据库/数据文件可能会导致在目标主机上创建一个新的控制文件,这意味着不可能从同一源从将来的RMAN备份还原


鉴于上述所有情况,除非其他人能够纠正我的错误,否则RMAN不可能在与源平台不同的endian平台上进行恢复。

我已经阅读了《Oracle数据库备份和恢复高级用户指南》第15章,没有任何内容可以作为可行的选择。CONVERT DATAFILE命令似乎是最合适的,但这假设您首先可以访问数据文件,正如我所说的,这些数据文件包装在RMAN备份中,因此它们位于多个备份“片段”中。有鉴于此,我想到的另一个选项是在windows计算机上执行RMAN还原,然后转换生成的数据文件,但RMAN无法识别控制文件,因为我怀疑它是big-endian格式

从CONVERT datafiles命令还原数据库/数据文件可能会导致在目标主机上创建一个新的控制文件,这意味着不可能从同一源从将来的RMAN备份还原


鉴于以上所有情况,除非其他人能够纠正我的错误,否则RMAN无法在与源平台不同的endian平台上进行还原。

您是否尝试过使用RMAN目录还原控制文件?这样,您就可以使用convert选项恢复控制文件。 此外,目录将允许您访问备份以恢复数据文件,同样使用convert选项。
要执行此操作,您必须在rman目录中注册并同步您的数据库,以便它具有所做备份的信息。

您是否尝试过使用rman目录还原控制文件?这样,您就可以使用convert选项恢复控制文件。 此外,目录将允许您访问备份以恢复数据文件,同样使用convert选项。
要做到这一点,您必须在rman目录中注册并同步您的数据库,以便它具有所做备份的信息。

感谢您提供的指针,我已经阅读了本节,转换数据文件看起来确实很有希望,但我无法获得rman备份片段中的数据文件。感谢您提供的指针,我已经阅读了本节,转换数据文件看起来确实很有希望,但我无法在RMAN备份部分中找到数据文件。