ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 32位ORACLE10G升级到 64位的ORACLE10G

32位ORACLE10G升级到 64位的ORACLE10G

原创 Linux操作系统 作者:c4313848 时间:2009-07-10 08:59:59 0 删除 编辑
升级前环境:
操作系统: 32位 Redhat Enterprise Linux 5
数据库:     32位 ORACLE 10.2.0.1
升级后环境:
操作系统 : 64位 Redhat Enterprise Linux 4
数据库:   64位 ORACLE 10.2.0.1


1.:首先对 数据库进行冷备份,
进行冷备份前,根据spfile制作一pfile文件
create pfile from spfile;
制作一控制文件的文本,alter database backup controlfile to trace;
关闭数据库,对数据库进行备份
备份文件内容如下
$ORACLE_BASE/admin/ORACLE_SID     --
$ORACLE_BASE/oradata/ORACLE_SID    --数据文件,日志文件,控制文件,
$ORACLE_HOME/dbs/                 --口令文件,pfile文件等


2:把备份文件复制到对应的目录下,


3:修改pfile文件,根据新的文件位置修改:
*.audit_file_dest='/u01/app/oracle/admin/test/adump'
*.background_dump_dest='/u01/app/oracle/admin/test/bdump'
*.core_dump_dest='/u01/app/oracle/admin/test/cdump'
*.db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'
*.user_dump_dest='/u01/app/oracle/admin/test/udump'
*.control_files='/u02/oradata/test/control01.ctl','/u02/oradata/test/control02.ctl','/u02/oradata/test/control03.ctl'
再在pfile文件中添加: _SYSTEM_TRIG_ENABLED = false

4:根据pfile文件启动数据库到nomount状态

export ORACLE_SID=test
sqlplus /nolog
conn / as sysdba
startup nomount [pfile='']

5:重建控制文件
如果64位的系统上的ORACLE数据文件,日志文件的位置与32位相同,则不需要重建控制,如不同则需要根据前面备份的控制文件TRACE脚本重建控制文件。

把原有的控制文件改名或删除,重建控制文件。
CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS  NOARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 5840
LOGFILE
  GROUP 1 '/u02/oradata/test/redo01.log'  SIZE 50M,
  GROUP 2 '/u02/oradata/test/redo02.log'  SIZE 50M,
  GROUP 3 '/u02/oradata/test/redo03.log'  SIZE 50M,
  -- STANDBY LOGFILE
DATAFILE
  '/u02/oradata/test/system01.dbf',
  '/u02/oradata/test/undotbs01.dbf',
  '/u02/oradata/test/sysaux01.dbf',
  '/u02/oradata/test/users01.dbf',
CHARACTER SET ZHS16GBK
;

6:打开数据库
alter database open;

7:添加 临时文件
alter tablespace temp add tempfile '/u02/oradata/test/temp01.dbf' size 1024m;
8:关闭数据库
shutdown immediate

9:
sqlplus /nolog
conn / as sysdba
startup upgrade [pfile='']
@ ?/rdbms/admin/utlirp.sql
后关闭数据库,并正常启动数据库:
shutdown immediate
startup
[pfile='']
@ ?/rdbms/admin/utlrp.sql
在执行这步骤的时候,会有点问题,执行完毕后,查看alert日志,发现
ORA-07445: exception encountered: core dump [_intel_fast_memcpy.A()+10] [SIGSEGV]

这个时候重建 OLAP
执行: @ ?/olap/admin/olap.sql
后再重新执行 @ ?/rdbms/admin/utlrp.sql,就没有报错误了。

10:关闭数据库,去除PFILE文件中的 _SYSTEM_TRIG_ENABLED 参数
启动数据库,到这里升级结束

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

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

注册时间:2008-11-14

  • 博文量
    26
  • 访问量
    39051