http://docs.oracle.com/cd/E11882_01/backup.112/e10643/rcmsynta012.htm
In Oracle Database 10g and later releases,
CONVERT DATAFILE
or CONVERT TABLESPACE
is required in
the following scenarios:-
Transporting data files between platforms for which the value in
V$TRANSPORTABLE_PLATFORM.ENDIAN_FORMAT
differs. -
Transporting tablespaces with undo segments
(typically
SYSTEM
andUNDO
tablespaces, but also tablespaces using rollback segments) between platforms, regardless of whether theENDIAN_FORMAT
is the same or different. Typically, theSYSTEM
andUNDO
tablespaces are converted only when converting the entire database. - Other platform specific data files, (like when converting to or from the hp Tru64 operating system), require additional data file conversion .
CONVERT
is to transport a tablespace into a database
stored in ASM. Native operating system commands such as Linux cp
and Windows COPY
cannot read from or write to ASM disk groups.It works well for non-system (actually should say non-undo) files:
RMAN> convert datafile '/dsk01/oradata/TESTDB/users01.dbf'
FROM PLATFORM = 'Solaris[tm] OE (64-bit)'
TO PLATFORM = 'Linux x86 64-bit'
db_file_name_convert '/dsk01/oradata/TESTDB' '/dsk01/oradata/TESTDB_CVT'
Starting conversion at target at 15-OCT-12
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile conversion
input file name=/dsk01/oradata/TESTDB/users01.dbf
converted datafile=/dsk01/oradata/TESTDB_CVT/users01.dbf
channel ORA_DISK_1: datafile conversion complete, elapsed time: 00:00:01
Finished conversion at target at 15-OCT-12
But not so well for any data files containing undo segments:
RMAN> convert datafile '/dsk01/oradata/TESTDB/system01.dbf'
FROM PLATFORM = 'Solaris[tm] OE (64-bit)'
TO PLATFORM = 'Linux x86 64-bit'
db_file_name_convert '/dsk01/oradata/TESTDB' '/dsk01/oradata/TESTDB_CVT'
Starting conversion at target at 15-OCT-12
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=212 device type=DISK
channel ORA_DISK_1: starting datafile conversion
input file name=/dsk01/oradata/TESTDB/system01.dbf
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of conversion at target command on ORA_DISK_1 channel at 10/15/2012 15:17:32
ORA-00600: internal error code, arguments: [ktu_format_nr: rbu mgc failed], [640], [32770], [32896], [], [], [], [], [], [], [], []
Oracle has a bug filed about this situation:
Bug 10409625 - ORA-600 [ktu_format_nr: rbu mgc failed] during RMAN convert datafile [ID 10409625.8] To Bottom
Description
It is fixed in 11.2.0.3 and above. Unfortunately, the fix is just changing the ORA-600 error into a "more graceful error message":If an ORA-600 [ktu_format_nr: rbu mgc failed] is raised when using RMAN to convert datafiles to a different endian then this might be the bug. Check if any of the datafiles belong to the SYSTEM tablespace, or contain undo blocks. If so, the operation is unsupported and the fix for this bug will cause a more graceful error message (ORA-19928).
In 11.2.0.3:
RMAN> convert datafile '/dsk01/oradata/TESTDB/system01.dbf'
FROM PLATFORM = 'Solaris[tm] OE (64-bit)'
TO PLATFORM = 'Linux x86 64-bit'
db_file_name_convert '/dsk01/oradata/TESTDB' '/dsk01/oradata/TESTDB_CVT';
Starting conversion at target at 16-OCT-12
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=23 device type=DISK
channel ORA_DISK_1: starting datafile conversion
input file name=/dsk01/oradata/TESTDB/system01.dbf
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of conversion at target command on ORA_DISK_1 channel at 10/16/2012 11:39:17
ORA-19928: CONVERT of data files with undo segments between different endian is not supported.
So, we are out of luck. I'd expect Oracle to implement this in probably release 12.2.
Hello,
ReplyDeleteThe Informative article on Oracle cross platform migration not working as advertised is nice ,It give brief information about it.Thanks for sharing the article on Cross Platform. Xamarin Consulting