`

How to convert a 32-bit database to 64-bit database on Linux

阅读更多

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;

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics