分享更有价值
被信任是一种快乐

oracle 10g RAC怎么升级到oracle 11g RAC

文章页正文上

oracle 10g RAC怎么升级到oracle 11g RAC,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
oracle 10g RAC升级到oracle 11g RAC
环境概要介绍
由于旧的环境硬件不足购支持生产系统的需要,需要切换到新的硬件,并计划升级数据库的版本,从oracle RAC 10.2.0.5版本升级到oracle RAC 11.2.0.4,升级思路如下:
1、搭建好oracle RAC 11g环境,在这里不详细说明如何搭建了。
2、在oracle RAC 11g的节点1服务器上,新开一个用户ora10g,然后安装好oracle 10.2.0.5单机版本数据库,这里需要注意的是ora10g的所属组,在ORACLE_HOME/bin/oracle的权限必须有权限,才可以访问oracle 11g集群的asm组。
3、搭建oracle RAC 10.2.0.5到oracle RAC 11g的节点1的DATAGUARD环境。这里不细说,这里需要注意的是,备库使用的11g的asm存储数据库文件。
4、升级当晚,以failover的方式结束ora10g的备机角色,转为主,运行11g的脚本,关闭数据库。
5、使用11g的数据库软件打开ora10g的数据库文件。
6、使用脚本升级数字字典。
7、注册数据库服务到集群管理。
8、检查配置。

系统环境说明:
192.168.1.121—》原使用oracle 10.2.0.5集群数据库环境。—》oracle用户
192.168.42.12—》新使用oracle 11g 集群环境,这里有ora10g、oracle、grid用户

一、检查DG同步
登陆192.168.1.121,对数据库进行连续切换几个日志。
alter system archive log current;
检查日志是否同步,分别在192.168.1.121、192.168.42.12进行检查同步。
select * from v$log_history;
select * from v$archive_dest;

二、关闭192.168.1.121主库数据库和停止监听
lsnrctl stop;
srvctl stop database –d etest;

4.5 切换备机(192.168.42.12)
使用的是failover的方式。
使用ora10g用户登陆192.168.42.12服务器,

在主库(192.168.1.121)发起,将备机日志功能发送去掉。
alter system set log_archive_dest_3=’’ scope=both;

备机(192.168.42.12)ora10g用户上执行
sqlplus / as sysdba
alter database recover managed standby database finish;
alter database commit to switchover to primary;
shutdown immediate;
startup;

在这里如果打开数据库有问题,切记要解决后才用11g的脚本打开,否则升级失败。

将11g $ORACLE_HOME/rdbms/admin 下的utlu112i.sql脚本copy到10g的$ORACLE_HOME/rdbms/admin 下,并在10g上执行,这个脚本可以检查升级前的一些信息。如果不满足条件,会列出。
sqlplus / as sysdba
spool upgrade_info.log
@?/rdbms/admin/utlu112i.sql
然后关闭oracle 10g的数据库。
shutdown immediate;
以上这个脚本需要特别小心,如果忘记运行,一旦用11g打开,整个环境就破坏了,不可逆。

登陆oracle(192.168.42.12)用户,确定实例名称都配置正确。
使用oracle 11g软件打开10g的库,升级数据字典。
使用已经定义的initetest1.ora文件,升级完成使用spfile。这里的initetest1.ora参数不具体给出,自己可以拿一个集群的例子修改即可。
sqlplus / as sysdba
startup upgrade;

upgrade模式下运行脚本:catupgrd.sql
执行语句:
这个跑的时间比较长,大概20分钟,最好放到后台去跑,在这里,测试的时候由于temp临时表空间由于空间不足导致升级脚本跑失败。所以投产时,请确认temp空间是否有调整到合适的值,重新跑脚本需要重启数据库,否则session会挂起。
确定新库的临时表空间是否存在
select * from dba_temp_files;
扩大临时表空间:
alter database tempfile ‘+DATA/etest/temp01.dbf’ resize 4g;

sqlplus -S -L “/ as sysdba” salter database open upgrade;
pool upgrade.log
@?/rdbms/admin/catupgr免费主机域名d.sql
OEF
脚本跑完后,自动关闭了数据库。
例如:
Total Upgrade Time: 00:17:01

PL/SQL procedure successfully completed.
Commit complete.
Database closed.
Database dismounted.
ORACLE instance shut down.

然后启动数据库,显示本次升级过程的摘要。
sqlplus / as sysdba
startup;
@?/rdbms/admin/utlu112s.sql
一般无报错提示

执行catuppst.sql脚本,不需要在upgrade 模式下执行,执行时间2分钟
@?/rdbms/admin/catuppst.sql

然后是编译无效对象,先查看有多少个无效对象:
select count(*) from dba_invalid_objects;
COUNT(*)
———-
5875
select distinct object_name from dba_invalid_objects;
这个脚本运行时间较长,大概2分钟,放到后台运行。
sqlplus -S -L “/ as sysdba” @?/rdbms/admin/utlrp.sql

最后检查一下无效对象:
select count(*) from dba_invalid_objects;

最后检查组件状态
col comp_name for a40
set wrap off
select comp_name,version, status from dba_registry;

1.1 注册集群数据库

使用spfile启动数据库,修改initetest1.ora配置文件
create spfile=’+DATA/etest/spfileetest.ora’ from pfile;
这里必须使用spfile,否则以后生产无法动态修改参数。
cat initetest1.ora
SPFILE=’+DATA/etest/spfileetest.ora’

修改集群参数
alter system set cluster_database=true scope=spfile;
shutdown immediate
startup

启动数据库
Startup
修改相关的参数:
以下是参数可提前修改好,注意检查
alter system set cluster_database=true scope=spfile sid=’etest1′;
alter system set cluster_database=true scope=spfile sid=’etest2′;

alter system set instance_number=1 scope=spfile sid=’etest1′;
alter system set instance_number=2 scope=spfile sid=’etest2′;
alter system set thread=1 scope=spfile sid=’etest1′;
alter system set thread=2 scope=spfile sid=’etest2′;
alter system set undo_tablespace=’UNDOTBS1′ scope=spfile sid=’etest1′;
alter system set undo_tablespace=’UNDOTBS2′ scope=spfile sid=’etest2′;

添加实例和数据库到集群管理

登楼集群节点2
crsctl start crs
启动数据库
Sqlplus / as sysdba
Startup

添加集群服务
使用oracle用户添加
srvctl add database -d etest -o ‘/u01/app/oracle/product/11.2.0/dbhome_1’ -p ‘+DATA/etest/spfileetest.ora’ -r primary -y AUTOMATIC

srvctl add instance -d etest -i ete免费主机域名st1 -n cpsdb01
srvctl add instance -d etest -i etest2 -n cpsdb02

检查服务
crs_stat -t -v

另外可检查
1、审计参数关闭。
2、dba_profile,检查profile是否配置合理。
3、Process参数配置是否合理
4、密码验证延迟参数event配置。
5、内存sga、pga配置
6、打开flashback database配置
7、归档日志打开

看完上述内容,你们掌握oracle 10g RAC怎么升级到oracle 11g RAC的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注云技术行业资讯频道,感谢各位的阅读!

相关推荐: oracle中出现ORA-12850错误怎么办

这篇文章给大家分享的是有关oracle中出现ORA-12850错误怎么办的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 1.问题现象报错信息如下: Thu Aug 24 10:01:33 2017 Errors in file /o…

文章页内容下
赞(0) 打赏
版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
文章页正文下
文章页评论上

云服务器、web空间可免费试用

宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

主机选购导航云服务器试用

登录

找回密码

注册