Scenario1: Same Patchset on 32bit and 64bit Databases
Step 1 : On the Source Database [32 bit]
1. Install Oracle 10.2.0.1.0 [32bit] on Windows 2003 [32bit].
2. Create a Database (ORCL).
3. Verify there are NO invalid objects. It is EXTREMELY important to make sure there are NO Invalid objects in the Database, prior to the migration.
4. Verify all components in the DBA_REGISTRY are Valid.
5. Take a cold backup of the database.
6. Take a control file backup using command
Alter database backup controlfile to trace;
Step 2 : On the Destination Database [64 bit]
1. Install Oracle 10.2.0.1.0 [64 bit] on Windows 2003 [64 bit] with the same directory structure as Source Database.
2. Copy the Database files from the 32bit Machine, to the 64bit Machine.
(Datafiles, Logfiles, Controlfiles,SPfile, tnsnames.ora, listener.ora, etc...).
3. Create the Oracle service on the 64bit system, using the ORADIM command.
D:\>oradim –new –sid orcl –startmode auto –pfile
4. Connect to SQL Plus with / AS SYSDBA User
5. Upgrade the database files from 32bit to 64bit
SQL> startup upgrade
6. This script invalidates all the objects. This is needed in order to change the word size.
SQL>@$Oracle_Home\rdbms\admin\utlip.sql
7. Recompile all the invalid objects.
SQL> @$Oracle_Home\rdbms\admin\utlrp.sql
SQL> shutdown immediate
SQL> startup
SQL> select name,platform_name,open_mode from v$database;
8. When this was all done, there should be 0 (zero) invalid objects.
Also, ALL of the Components in DBA_REGISTRY should be valid.
Scenario2: Different Patchset on 32bit and 64bit Databases
Step 1 : On the Source Database [32 bit]
1. Install Oracle 10.2.0.1.0 [32bit] on Windows 2003 [32bit].
2. Create a Database (ORCL).
3. Verify there are NO invalid objects. It is EXTREMELY important to make sure there are NO Invalid objects in the Database, prior to the migration.
4. Verify all components in the DBA_REGISTRY are Valid.
5. Take a cold backup of the database.
6. Take a control file backup using command
Alter database backup controlfile to trace;
Step 2 : On the Destination Database [64 bit]
1. Install Oracle 10.2.0.1.0 [64 bit] on Windows 2003 [64 bit] with the same directory structure as Source Database.
2. Copy the Database files from the 32bit Machine, to the 64bit Machine.
(Datafiles, Logfiles, Controlfiles,SPfile, tnsnames.ora, listener.ora, etc...).
3. Create the Oracle service on the 64bit system, using the ORADIM command.
D:\>oradim –new –sid orcl –startmode auto –pfile
4. Connect to SQL Plus with / AS SYSDBA User
5. Upgrade the database files from 32bit to 64bit
SQL> startup upgrade
6. This script invalidates all the objects. This is needed in order to change the word size.
SQL> @$Oracle_Home\rdbms\admin\utlip.sql
7. This should only be run if you are going to a newer patchset
SQL>@$Oracle_Home\rdbms\admin\catupgrd.sql
8. If you do run the catupgrd.sql script going to the same version, you could end up with the errors:
ORA-20000: Upgrade re-run not supported from version
ORA-06512: at "SYS.VERSION_SCRIPT", line 45
=====================================
This finished with some invalid objects, and some of the components were still marked as invalid (in the dba_registry).
9. Recompile all the invalid objects.
SQL> @$Oracle_Home\rdbms\admin\utlrp.sql
SQL> shutdown immediate
SQL> startup
SQL> select name,platform_name,open_mode from v$database;
9. When this was all done, there should be 0 (zero) invalid objects.
Also, ALL of the Components in DBA_REGISTRY should be valid.
No comments:
Post a Comment