How to convert a 32-bit database to 64-bit database on Linux
Note:341880.1
This document provides details for changing word size from 32bit to 64bit in same release .For example, if you have the 32-bit version of Oracle release 9.2.0.4 and you want to switch to the 64-bit version of Oracle release 9.2.0.4, then you must complete this below procedure. This document is a "cut/paste" of applicable sections from the Oracle9i Release Notes Release 2 (9.2.0.4) for Linux x86-64 (B13848-02), to quickly provide the needed details and steps to change the word-size.
Use the following procedure to change wordsize of an Oracle9i Release 2 (9.2) or Oracle10g (10.1 & 10.2) single instance database from Linux x86 to Linux x86-64 in same release:
1. Perform cold backups of the existing Oracle9i or Oracle10g (10.1.x & 10.2.x)database on the Linux x86 system to protect against any failures during the wordsize change.
2. NOTE:This steps is required if the target system has different directory structure for database files. Otherwise this step can be skipped.
To help with creating the control file after the wordsize change, enter the following SQL command:
SQL> ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
This command saves the control file information to a trace file in the UDUMP directory (Type show parameter USER_DUMP_DEST in SQLPLUS as sys/system user). The control file information is similar to the following:
CREATE CONTROLFILE REUSE DATABASE "SAMPLE" NORESETLOGS
NOARCHIVELOG
MAXLOGFILES 32
MAXLOGMEMBERS 2
MAXDATAFILES 32
MAXINSTANCES 1
MAXLOGHISTORY 112
LOGFILE
GROUP1 '/ia32lnx_path/oracle/dbs/t_log1.f' SIZE 25M,
GROUP2 '/ia32lnx_path/oracle/dbs/t_log2.f' SIZE 25M
DATAFILE '/ia32lnx_path/oracle/dbs/t_DB1.F'
CHARACTER SET WE8DEC;
3. In a new Oracle home, install the 64-Bit release of Oracle9i Release 2 (9.2.x) , Oracle10.1.x, Oracle 10.2.x software for Linux x86-64. It is recommended to use the same version on as on the 32-Bit box.
4. Perform a clean database shutdown for Oracle-32 Bit database
5. Copy the database files from Linux-x86 to the Linux x86-64 system.
6. Copy your existing Oracle initialization parameter file (initsid.ora) to the new Oracle home.
7. Edit the parameter file to point to the controlfiles if the location has change from the source machine.
8. Change any Oracle home path references to use the new Oracle home path on the Linux x86-64 system. Like user_dump_dest , background_dump_dest , core_dump_dest etc
9. NOTE:This steps is required if the target system has different directory structure for database files which causes controlfile recreation Otherwise this step can be skipped.
Start up the database using SQL commands similar to the following
Example:
SQL> STARTUP NOMOUNT;
CREATE CONTROLFILE REUSE DATABASE "SAMPLE" NORESETLOGS
MAXLOGFILES 32
MAXLOGMEMBERS 2
MAXDATAFILES 32
MAXINSTANCES 1
MAXLOGHISTORY 112
LOGFILE
GROUP 1 '/lnx_x86-64_path/oracle/dbs/t_log1.f' size 25M
GROUP 2 '/lnx_x86-64_path/oracle/dbs/t_log2.f' size 25M
DATAFILE '/lnx_x86-64_path/oracle/dbs/t_db1.f'
CHARACTER SET WE8DEC
ALTER DATABASE OPEN
Note: In the previous example, the path values will vary depending on your system.
10.To change the word size of your release, enter the following command:
If you are migrating an Oracle9i 9.2.0.x database, run STARTUP MIGRATE:
SQL> STARTUP MIGRATE
If you are migrating an Oracle10g database, run STARTUP UPGRADE:
SQL> STARTUP UPGRADE
SQL> @$ORACLE_HOME/rdbms/admin/utlirp.sql
Oracle recommends that you run the utlrp.sql script after running the utlirp.sql script. The utlrp.sql script recompiles all PL/SQL modules that might be in an invalid state, including packages, procedures, and types. This is optional but Oracle recommends that you do it during installation and not at a later date. To run the utlrp.sql script, enter the following command:
SQL>shutdown immediate;
SQL> @$ORACLE_HOME/rdbms/admin/utlrp.sql
Note:If you are changing wordsize for Oracle release10.1.x/10.2.x 32-Bit to 64-bit with OLAP enabled for DB then you may likely to see the error
On Console:
<>ORA-06544: PL/SQL: internal error, arguments: [56319], [], [], [], [], [], [], []<>
On alert.log:
ORA-07445: exception encountered: core dump [_intel_fast_memcpy.A()+10] [SIGSEGV] <>
Or
ORA-07445: exception encountered: core dump [_intel_fast_memcpy.A()+10] [SIGSEGV] < style="font-family: arial unicode ms;"> ( Run the Following query to check OLAP component installed
SELECT COMP_NAME, STATUS FROM DBA_REGISTRY WHERE COMP_NAME LIKE ‘%OLAP%’)
Please refer the document to solve this issue
Note 352306.1 Upgrading OLAP from 32 to 64 bits
Note 332351.1 How To Remove the OLAP Option and Add it again in Oracle Database 10g
Note: At this point, the natively compiled Java objects in the new[wordsize changed] database are invalid. Refer to the section "Steps to Update Natively Compiled Java Objects in the Database" for the procedure to revalidate these objects.
11.Perform a clean shutdown of the database.
12.Perform a complete backup of the new 64-bit Oracle9i Release 2 (9.2) or Oracle10gr1 /10gr2 database
Steps to Update Natively Compiled Java Objects in the Database
To use natively compiled Java objects for Linux x86-64, use the following procedure to update compiled Java objects in the database:
i. Connect to the database as user SYS or SYSTEM as SYSDBA [ You may get error ORA-1031 while running following command if you are not connected as SYSDBA]
ii. Enter the following command:
iii. SQL> CREATE OR REPLACE JAVA SYSTEM;
How to convert a 32-bit database to 64-bit database on Linux
最新推荐文章于 2024-06-21 17:54:11 发布