ITPub博客

首页 > 数据库 > Oracle > oracle 10g 32bit 升级到64bit

oracle 10g 32bit 升级到64bit

原创 Oracle 作者:lifewise 时间:2007-09-10 14:07:05 0 删除 编辑
转:看完Oracle提供的升级文档,按照上面讲的方法升级几次失败.经过自己多此实验,升级成功,现在将升级过程分享给大家[@more@]看完Oracle提供的升级文档,按照上面讲的方法升级几次失败.经过自己多此实验,升级成功,现在将升级过程分享给大家

1. 安装Oracle 10G到一台64位系统上,不要创建Database.

2. 将原来的32DB Shutdown,将所有Data文件Copy64位系统上

3. 32位的初始化文件Copy64系统正确的位置

4. oradim Create一新的实例(Copy过来的初始化参数文件)

5. 修改初始化文件,增加 _SYSTEM_TRIG_ENABLED = false参数

6. Shutdown 64Database

7. Stratup nomount

8. Create control file(例如,你的要根据你的DB修改)

CREATE CONTROLFILE REUSE DATABASE "T1" NORESETLOGS NOARCHIVELOG
MAXLOGFILES 32
MAXLOGMEMBERS 2
MAXDATAFILES 32
MAXINSTANCES 16
MAXLOGHISTORY 1815
LOGFILE
GROUP 1 'C:oracleproduct10.1.0oradataorcl64REDO03.LOG' SIZE 1M,
GROUP 2 'C:oracleproduct10.1.0oradataorcl64REDO02.LOG' SIZE 1M,
GROUP 3 'C:oracleproduct10.1.0oradataorcl64REDO01.LOG' SIZE 1M
DATAFILE
'C:oracleproduct10.1.0oradataorcl64SYSTEM01.DBF',
'C:oracleproduct10.1.0oradataorcl64RBS01.DBF',
'C:oracleproduct10.1.0oradataorcl64USERS01.DBF',
'C:oracleproduct10.1.0oradataorcl64TEMP01.DBF',
'C:oracleproduct10.1.0oradataorcl64TOOLS01.DBF',
'C:oracleproduct10.1.0oradataorcl64INDX01.DBF',
'C:oracleproduct10.1.0oradataorcl64DR01.DBF'
9. Shutdown immediate

10. Startup upgrade

11. SPOOL catoutw.log

12. SET ECHO ON;

13. SQL>@C:oracleproduct 10.2.0db_1RDBMSADMINutlirp.sql;

14. SPOOL OFF;

15. Shutdown immediate

16. SET ECHO OFF;

17. Startup

18. SQL>@C:oracleproduct10.2.0db_1RDBMSADMINutlrp.sql;

19. Shutdown immediate

20.再次修改初始化参数文件,删除参数 _SYSTEM_TRIG_ENABLED = false

21.Startup

升级完成

How to Migrate from a 32-bit to a 64-bit database

This note is intended for anyone trying to migrate an 8.1.7.3 32-bit database to an 8.1.7.3 64-bit database.
Note that upgrading and changing bitsize (ie. 32-bit to 64-bit or vice versa) is not supported or recommended if it is done together.
You must first upgrade your existing database to the proper version (for example 8.1.7.3) and then perform the bitsize conversion by following the procedure below.
Please keep in mind the following as well. A 64-bit OS can run 32-bit and 64-bit databases. Just because you are running on a 64-bit OS does not mean that you are running Oracle's 64-bit version of the database software.

HOW TO MIGRATE FROM A 32-BIT TO A 64-BIT DATABASE
-------------------------------------------------

Solution Description
--------------------

The solution here is a walkthrough of doing a word conversion considering that you are going to upgrade from 8.1.7.3 (32-bit) to 8.1.7.3 (64-bit). This applies if you are running Java inside the database. For databases running Oracle Apps, please note that certain apps-specific patches may also be required.

1) Shutdown your 32-bit 8.1.7.3 database. Shutdown the listener.
2) Take a cold backup of this database.
3) Install Oracle RDBMS 8.1.7.0 (64-bit)
4) Apply patchset 8.1.7.3 (64-bit) to this oracle home.
5) Copy your init.ora from the 32-bit home to the 64-bit home.
6) Edit the init.ora of the 64-bit ORACLE_HOME so that the following parameters are set as follows:
aq_tm_processes = 0
job_queue_processes = 0
_system_trig_enabled = FALSE
db_block_buffers= (at least 2000)
shared_pool_size= (at least 150MB)
java_pool_size= (at least 20MB)

7) sqlplus internal or sys
startup restrict your 8.1.7.3 database using the ORACLE HOME of 8.1.7.3(64-bit).

8) delete from duc$ where pack='JIS$INTERCEPTOR$' and proc='USER_DROPPED';
commit;
@?/rdbms/admin/utlip.sql

9) Go to Metalink, select Patches, and put in 1994933 for the 'Patch Number'.
It will come up with a patch saying that it is for HP, but it is actually generic for Oracle on all platforms.
After downloading the patch, extract it and keep track of where you put the rmsro.sql and invalidate.sql files.

10) Now run the following, again from sql*plus connected as internal or sys:
SQL> @?/javavm/install/initjvmaux.sql
SQL> @/rmsro.sql SQL> call rmsro.run();
SQL> @/invalidate.sql

11) shutdown normal the database

12) If you are following this procedure because you are converting word size from 8.1.7.3 32-bit to 8.1.7.3 64-bit **ON SOLARIS**, then you also need to apply another fix.
Go to Metalink, select Patches, and put in 2209569 for the 'Patch Number'. After downloading the patch, extract it and put the classes.bin file from the downloaded patch into $ORACLE_HOME/javavm/admin. This will replace the classes.bin file which is already there.

13) Startup restrict your 64-bit 8.1.7.3 database

14) Sql*plus internal or sys and type
SQL> create or replace java system
2 /

15) Shutdown the database

16) Startup restrict the database, connect as internal or sys and run SQL> @?/rdbms/admin/utlrp.sql;
-- To check on the progress of utlrp.sql, you can open a second sql prompt and do a select count(*) from dba_objects where status!='VALID'; This count should keep decreasing as the script progresses to revalidate all the objects.
-- If you get an ORA-29554 unhandled Java out of memory condition error, simply rerun utlrp.sql again and it will pick up where it left off.

17) Shutdown the database
(Note: you may get an ORA-600 [729] error which is a harmless memory leak. If that is the case, simply do a shutdown abort before continuing)

18) Change the _SYSTEM_TRIG_ENABLED parameter in your init.ora as follows. _SYSTEM_TRIG_ENABLED =TRUE

19) Startup restrict, connect as internal or sys and run:
SQL> insert into duc$ (owner, pack, proc, field1, operation#, seq) values ('SYS','JIS$INTERCEPTOR$','USER_DROPPED',0,1,1);
SQL> commit;

20) shutdown the database

21) Modify the database startup parameters JOB_QUEUE_PROCESSES and AQ_TM_PROCESSES (and shared_pool_size/java_pool_size/db_block_buffers if you modified them earlier) back to their original values.

22) restart the database

23) check that you are able to startup & shutdown normally the database without hanging anywhere.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/620862/viewspace-968753/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-01-07

  • 博文量
    52
  • 访问量
    488452