Oracle升级(10.2.0.1->10.2.0.3)

      一般情况下我们在安装Oracle软件以后,创建数据库之前就会为Oracle打上补丁,当然没打也没关系,接下里就会介绍Oracle在建库以后的升级过程,DB:Oracle 10G R2 10.2.0.1;OS:Red Hat Linux as 4。Oracle安装参考:http://blog.csdn.net/huang_tg/archive/2010/06/03/5645131.aspx

      一. 升级前的准备

          首先下载并上传补丁包到数据库服务器上,因为我试验使用的是Linux下32位的Oracle 10G R2 10.2.0.1,所以需要的补丁为p5337014_10203_LINUX.zip。补丁直接到Oracle官网上去下,注意对应的版本就可以了。

          1. 解压补丁包,得到Disk1文件夹

          2. 备份数据库及Oracle相关目录,必须是全备。推荐冷备,一旦升级出现问题恢复也比较快。

      二. 升级Oracle软件

          1. 安装补丁包,需要用到图形终端。VNC使用参考:http://blog.csdn.net/huang_tg/archive/2010/05/28/5631178.aspx

          2. 根据一步一步执行,知道提示以root身份运行root.sh脚本

          3. 以root身份运行root.sh脚本,完成后Oracle软件升级完成。

      三. 升级数据库

          Oracle软件升级完成以后先不忙启动数据库,否则会报如下错误:
          ORA-00704: bootstrap process failure
          ORA-39700: database must be opened with UPGRADE option
          Error 704 happened during db open, shutting down database
          USER: terminating instance due to error 704
          Instance terminated by USER, pid = 7819
          ORA-1092 signalled during: ALTER DATABASE OPEN...

          升级数据库有两种方式:DBUA图形化方式及手工升级方式,推荐使用手工升级方式。DBUA图形化方式操作简单,只需按照提示一步一步往下做就可以了,需要注意如果要升级的数据库没有在列表中,需修改/etc/oratab添加相应的SID,升级过程作要勾选“升级完成后编译无效对象”选项。如果在升级之前没有备份,可以在使用DBUA的时候选择备份数据库,DBUA执行的是冷备,需要保留足够的空间。按照提示执行完成以后没有报错就可以finish了。

          手工方式先使用echo $ORACLE_SID是否为需要升级的数据库,不是则使用export $ORACLE_SID=sid修改,然后以DBA身份登录SQLPLUS,执行如下操作:

          SQL> startup upgrade                                    
          SQL> spool /u01/upgrade.log  
          SQL> @?/rdbms/admin/catupgrd.sql    --需要等待较长时间

          如果这一步顺利执行,那么数据升级工作已经完成一大半了,接下来重启数据库,编译无效对象。因为catupgrd.sql可能会造成一些数据对象无效,通过语句:select count(1) from dba_objects where status='INVALID'查询是否存在有无效的对象,有则运行utlrp.sql编译无效的对象。

          SQL> shutdown immediate;                                    
          SQL> startup   
          SQL> @?/rdbms/admin/utlrp.sql    --需要等待较长时间

          编译完成以后查询一下表空间,用户,用户对象等信息,如果都没有问题,OK,我们的数据库升级算是成功了,接下来就备份一次数据库,然后打开应用。我们在查询对象的时候可能出现一些名字类似BIN$BD34RX+6TCJEK54334w==$0的对象,这些是保存在回收站里面的删除对象,可以忽略。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值