9i RAC静默升级至10g RAC

周末帮朋友升级了一个9i rac的数据库,版本是9.2.0.4/操作系统 redflag,数据文件采用裸设备,需要升级到10g rac (10.2.0.4),由于数据量很大且属于同平台同机升级,于是排除掉 exp/imp方案,安装好10.2.0.4的版本的crs和db后,直接升级数据字典.

由于当时环境限制比较多,不能采用图形化界面操作,于是整个过程在静默模式下完成,中间碰到了一点点问题,算是顺利完成。
以下是升级过程。
<一> 安装前准备工作
1.备份9i rac数据库软件以及数据库文件
2.10g rac环境准备
(1).创建用于10gR2 CRS 所需的OCR和vote disk(采用裸设备)

[root@node1 install]#lvcreate -L200M -nocr vgdata
[root@node1 install]#lvcreate -L200M -nvotingdisk vgdata

在两节点对新加入lv激活并做裸设备绑定/授权
(2).创建相应目录,配置环境(编辑/etc/hosts,profile,创建ssh互信节点等…)
<二>静默安装10.2.0.1版本软件并打10.2.0.4patch
1.静默安装crs
先安装10.2.0.1

[oracle@node1 install]$./runInstaller -silent -force -ignoreSysprereqs -responseFile /home/oracle/crs.rsp

安装过程会出错,需要手工在两节点执行/opt/oracle/product/10.2.0/crs_1/root.sh.在第二节点执行root.sh的会抛出异常,

Running vipca(silent) for configuring nodeapps
The given interface(s), “eth0″ is not public. Public interfaces should be used to configure virtual IPs.

这是10.2.0.1下面的一个bug,必须用root用户以GUI方式来执行vipca,由于没有图形界面环境,所以这个错误暂时不理,关闭每个节点上的crs服务,直接打10.2.0.4补丁,打完补丁后,再静默调用vipca.

[root@node1 install]#/opt/oracle/product/10.2.0.4/crs_1/vipca -silent -nodelist node1 -nodevips node1/node1-vip/255.255.255.0/eth1
[root@node1 install]#/opt/oracle/product/10.2.0.4/crs_1/vipca -silent -nodelist node2 -nodevips node2/node2-vip/255.255.255.0/eth1

执行成功后,查看:

[oracle@node1 ~]$ crs_stat -t
Name Type Target State Host
————————————————————
ora.node1.gsd application ONLINE ONLINE node1
ora.node1.ons application ONLINE ONLINE node1
ora.node1.vip application ONLINE ONLINE node1
ora.node2.gsd application ONLINE ONLINE node2
ora.node2.ons application ONLINE ONLINE node2
ora.node2.vip application ONLINE ONLINE node2

接下来执行

[oracle@node1 ~]$/opt/oracle/product/10.2.0/crs_1/cfgtoollogs/configToolFailedCommands

用以配置ons和oifcfg
2.静默安装datbase software
同样,先安装10.2.0.1,然后patch到10.2.0.4

[oracle@node1 install]$./runInstaller –silent –force -ignoreSysprereqs –responseFile /home/oracle/db_software.rsp

<三>升级数据库

1.准备10g database启动环境

copy 9i目录下dbs文件目录到10g对应目录下,编辑参数文件,配置shared_pool java_pool的大小,修改cluster_database=false,并去掉相关废弃参数.

2.启动数据库并升级数据字典

SQL>startup upgrade pfile=’/home/oracle/pfiletmp.ora’;

(1)创建sysaux表空间

SQL>CREATE TABLESPACE sysaux DATAFILE ‘/oradata/test/sysaux01.dbf’ SIZE 500M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO

(2) 升级数据字典

SQL>@?/rdbms/admin/catupgrd
–show upgrade result
SQL>@?/rdbms/admin/utlu102s

升级完毕后,关闭数据库,修改参数文件并创建成spfile,正常启动后,编译失效的对象

SQL>@?/rdbms/admin/utlrp

<四>注册资源

1.注册监听
采用crs_register的方式注册编写的ora.node1.LISTENER_NODE1.lsnr.cap文件

[oracle@node1 admin]$ crs_register ora.node1.LISTENER_NODE1.lsnr -dir /home/oracle

[oracle@node1 admin]$ crs_register ora.node2.LISTENER_NODE2.lsnr -dir /home/oracle

2.注册database和instance

[oracle@node1 admin]$ srvctl add database -d gzfk -o $ORACLE_HOME
[oracle@node1 admin]$ srvctl add instance -d gzfk -i gzfk1 -n node1
[oracle@node1 admin]$ srvctl add instance -d gzfk -i gzfk2 -n node2
[oracle@node1 admin]$ crs_stat -t
Name Type Target State Host
————————————————————
ora….E1.lsnr application ONLINE ONLINE node1
ora….E2.lsnr application ONLINE ONLINE node2
ora.node1.gsd application ONLINE ONLINE node1
ora.node1.ons application ONLINE ONLINE node1
ora.node1.vip application ONLINE ONLINE node1
ora.node2.gsd application ONLINE ONLINE node2
ora.node2.ons application ONLINE ONLINE node2
ora.node2.vip application ONLINE ONLINE node2
ora.fzfk.db application ONLINE ONLINE node1
ora….k1.inst application ONLINE ONLINE node1
ora….k2.inst application ONLINE ONLINE node2

接下来做一系列收尾和配置工作.

bookmark

相关文章 随机文章

2 Comments

nessy01月 19th, 2009 at 08:40

我手头也有这么一个项目,目前还不知道怎么去实施。。
先看看楼主的实施情况,测试一下。

Jackson04月 23rd, 2009 at 01:00

so good,you can note more detail..

Leave a comment

Your comment