Welcome 微信登录

首页 / 数据库 / MySQL / 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://www.linuxidc.com/Linux/2013-04/82819.htm一. 升级前的准备首先下载并上传补丁包到数据库服务器上,因为我试验使用的是Linux下32位的Oracle 10G R2 10.2.0.1,所以需要的补丁为p5337014_10203_LINUX.zip。补丁直接到Oracle官网上去下,注意对应的版本就可以了。1. 解压补丁包,得到Disk1文件夹2. 备份数据库及Oracle相关目录,必须是全备。推荐冷备,一旦升级出现问题恢复也比较快。二. 升级Oracle软件1. 安装补丁包,需要用到图形终端。VNC使用参考:2. 根据一步一步执行,知道提示以root身份运行root.sh脚本3. 以root身份运行root.sh脚本,完成后Oracle软件升级完成。三. 升级数据库Oracle软件升级完成以后先不忙启动数据库,否则会报如下错误:ORA-00704: bootstrap process failureORA-39700: database must be opened with UPGRADE optionError 704 happened during db open, shutting down databaseUSER: terminating instance due to error 704Instance terminated by USER, pid = 7819ORA-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 upgradeSQL> spool /u01/upgrade.logSQL> @?/rdbms/admin/catupgrd.sql    --需要等待较长时间如果这一步顺利执行,那么数据升级工作已经完成一大半了,接下来重启数据库,编译无效对象。因为catupgrd.sql可能会造成一些数据对象无效,通过语句:select count(1) from dba_objects where status="INVALID"查询是否存在有无效的对象,有则运行utlrp.sql编译无效的对象。SQL> shutdown immediate;SQL> startupSQL> @?/rdbms/admin/utlrp.sql    --需要等待较长时间编译完成以后查询一下表空间,用户,用户对象等信息,如果都没有问题,OK,我们的数据库升级算是成功了,接下来就备份一次数据库,然后打开应用。我们在查询对象的时候可能出现一些名字类似BIN$BD34RX+6TCJEK54334w==$0的对象,这些是保存在回收站里面的删除对象,可以忽略。Installing Oracle 10g R2 on LinuxOracle数据库服务器搭建相关资讯      Oracle升级 
  • Oracle升级中的参数补充  (05月31日)
  • 升级Oracle 11.2.0.1.0到11.2.0.3.  (01月12日)
  • Oracle 10g升级后启动失败(Oracle  (05/24/2015 11:40:44)
  • Oracle 10g(10.2.0.4)升级到10.2.0  (04月10日)
  • Oracle 11.2.0.1升级到11.2.0.3  (11/27/2015 09:21:45)
  • Oracle升级到11.2.0.4之后在alert  (02/18/2015 09:30:44)
本文评论 查看全部评论 (0)
表情: 姓名: 字数