Restoring RMAN Oracle 10g Backup in Oracle 11g

7k Views Asked by At

I have the RMAN full database backup of oracle 10g (10.2.0.3) on Sun Solaris OS which I want to restore on oracle 11g (11.2.0.3) on Linux OS. The backup pieces were transferred to the oracle 11g server manually in binary mode. The Oracle 11g is installed on Linux OS. I have only the RMAN backup and no access to the primary database from where the backup has been taken.

-rwxrwxr-x 1 mepc dba   36356096 Jul 16 14:49 snapcf_MEPC.f
-rwxrwxr-x 1 mepc dba  166028800 Jul 16 15:29 MEPC_full_backup_MEPC_nnnbkn9f_1_1
-rwxrwxr-x 1 mepc dba  169567744 Jul 16 15:29 MEPC_full_backup_MEPC_nmnbkn9f_1_1
-rwxrwxr-x 1 mepc dba  164813824 Jul 16 15:39 MEPC_full_backup_MEPC_nonbkn9f_1_1
-rwxrwxr-x 1 mepc dba  144025600 Jul 16 16:06 MEPC_full_backup_MEPC_nqnbkn9f_1_1
-rwxrwxr-x 1 mepc dba  168576512 Jul 16 16:09 MEPC_full_backup_MEPC_npnbkn9f_1_1
-rwxrwxr-x 1 mepc dba  168649216 Jul 16 17:33 MEPC_full_backup_MEPC_o5nbkpvv_1_1
-rwxrwxr-x 1 mepc dba  162847232 Jul 16 17:34 MEPC_full_backup_MEPC_o6nbkpvv_1_1
-rwxrwxr-x 1 mepc dba  167351808 Jul 16 17:35 MEPC_full_backup_MEPC_o7nbkpvv_1_1
-rwxrwxr-x 1 mepc dba  166838272 Jul 16 17:36 MEPC_full_backup_MEPC_o8nbkpvv_1_1
-rwxrwxr-x 1 mepc dba  166876160 Jul 16 17:37 MEPC_full_backup_MEPC_o9nbkpvv_1_1
-rwxrwxr-x 1 mepc dba  327606272 Jul 16 17:54 MEPC_full_backup_MEPC_o4nbknav_1_1
-rwxrwxr-x 1 mepc dba  549658624 Jul 16 18:26 MEPC_full_backup_MEPC_o2nbknav_1_1
-rwxrwxr-x 1 mepc dba  162984448 Jul 16 18:28 MEPC_full_backup_MEPC_oanbkpvv_1_1
-rwxrwxr-x 1 mepc dba  163567616 Jul 16 18:29 MEPC_full_backup_MEPC_obnbkpvv_1_1
-rwxrwxr-x 1 mepc dba  161380352 Jul 16 18:29 MEPC_full_backup_MEPC_ocnbkpvv_1_1
-rwxrwxr-x 1 mepc dba 1072275456 Jul 18 13:52 MEPC_full_backup_MEPC_o3nbknav_1_1
-rwxrwxr-x 1 mepc dba 1813348352 Jul 18 17:00 MEPC_full_backup_MEPC_o1nbknav_1_1
-rwxrwxr-x 1 mepc dba   36438016 Jul 25 15:45 controlfile_bkup_MEPC_c-1469445140-20120522-09

the backup is taken in the above format. I know the ORACLE_SID and did of the database from which the backup has been taken.

whenever I tried the following command

mepc@tcstctmatson:/mepc_backup/May22fullbkp$ rman target /

Recovery Manager: Release 11.2.0.3.0 - Production on Tue Jul 31 12:14:54 2012

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

connected to target database: MEPC (DBID=1595278680)

RMAN> shutdown;
using target database control file instead of recovery catalog
database closed
database dismounted
Oracle instance shut down

RMAN> startup nomount;

connected to target database (not started)
Oracle instance started

Total System Global Area    1071333376 bytes

Fixed Size                     1349732 bytes
Variable Size                620758940 bytes
Database Buffers             444596224 bytes
Redo Buffers                   4628480 bytes

RMAN> restore spfile to '$ORACLE_HOME/dbs/initMEPC.ora' from autobackup db_recovery_file_dest='/mepc_backup/May22fullbkp' db_name='MEPC';

the following error was notified

Starting restore at 31-JUL-12
using channel ORA_DISK_1

recovery area destination: /mepc_backup/May22fullbkp
database name (or database unique name) used for search: MEPC
channel ORA_DISK_1: no AUTOBACKUPS found in the recovery area
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20120731
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20120730
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20120729
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20120728
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20120727
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20120726
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20120725
channel ORA_DISK_1: no AUTOBACKUP in 7 days found
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 07/31/2012 12:22:06
RMAN-06172: no AUTOBACKUP found or specified handle is not a valid copy or piece

i tried recovering the rman backup through catalog also and the following error was notified

List of Files Which Where Not Cataloged
=======================================
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_nonbkn9f_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_obnbkpvv_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_ocnbkpvv_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_o7nbkpvv_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_o9nbkpvv_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_nmnbkn9f_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_nnnbkn9f_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_o3nbknav_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_o6nbkpvv_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/controlfile_bkup_MEPC_c-1469445140-20120522-09
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_npnbkn9f_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_oanbkpvv_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_nqnbkn9f_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_o1nbknav_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_o5nbkpvv_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/snapcf_MEPC.f
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_o2nbknav_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_o4nbknav_1_1
  RMAN-07517: Reason: The file header is corrupted
File Name: /mepc_backup/May22fullbkp/MEPC_full_backup_MEPC_o8nbkpvv_1_1
  RMAN-07517: Reason: The file header is corrupted

the file is not corrupted as I checked the checksum on both the servers and it is the same.

Please help me how can I restore the RMAN oracle 10g backup in Oracle 11g and let me know where I am going wrong.

Thanks in advance.

3

There are 3 best solutions below

3
On

You can not do this. AFAIK, Solaris - assuming sparc - and Linux - assuming Intel - have different endian formats and this is your problem. You could use the migrate cross platform tablespace scenario. see Oracle® Database Backup and Recovery Reference If your endian format does appear to be the same, you should convert the database using rman convert database. In that case you could restore cross platform and cross version.

0
On

Not applicable for 10g/11g, but this is different in 12c:

In 12c, rman offers the option following options with the backup command:

FOR TRANSPORT: This options creates a backupset which can be transported to any destination. If the destination database uses a different endian format than the source, the endian format conversion is performed on the destination database. TO PLATFORM: This option results in the endian format conversion to be performed on the source database and must be used by that supported platform only. DATAPUMP: This specifies that a data pump export dump file is created while performing a cross-platform backup. The dump file is created in s separate backup set.

0
On

Use below command to restore from autobackup, RMAN knows the path and it will restore.

restore controlfile from autobackup;

You need to know first Solaris to Linux are part of same endian or not. I see that Solaris 64 but and Linux 64 bit are same endian.

Even it has same endian you will see this error when " The source Production database, has a 32KB tablespace and an initialisation parameter defined for db_32k_cache_size, but the target pfile didn't have the parameter db_32k_cache_size defined"

Set in the pfile/spfile of the target db_32k_cache_size