【流水账--oracle生产库升级】在Centos7.0 下升级Oracle 11.2.0.1至Oracle11.2.0.4

在Centos7.0 下升级Oracle 11.2.0.1至Oracle11.2.0.4

背景:系统x86_64;Oracle software未安装grid、asm、未搭建rac;该机器上共运行两个instance(对应两个database)

准备

下载p13390677_112040_Linux-x86-64_1of7.zip ; p13390677_112040_Linux-x86-64_2of7.zip ,将两文件上传至centos7.0,解压,进入databse文件夹,运行runInstaller

开始

Pre1.建议在step6中安装至别的路径,这样在升级出错后仍然可以使用原software无损启动原oracle databse;

Pre.2如有必要可以先备份databse,将databse设置为只读方式,清空回收站,可以加快升级速度;

Pre.3步骤三跟步骤四顺序不要弄错,不然可能会(譬如Step10.3.5中移动了database)无法搜索到别的database;

最后,类似安装流程,整个升级过程分为两部分:第一部分升级software;第二部分升级database。另外本文最后还记录了升级后如何升级第二个database,检查监听及环境变量的配置等所有升级相关的工作,直到数据库能被远程正常访问。

一、升级software

Step1

取消勾选 i wish...,next

点击Yes

Step2

由于没有OS账号,选择Skip...,next

Step3

选择 upgrade...,next

Step4

选择运行oracle database的语言,next

Step5

选择enterprise...,next

Step6

Software安装路径修改为11.2.0.4(好处是升级出错,仍可以使用原software无损启动原database),next

Step7

如果配置了oper组请选择改组,本人安装oracle db时未配置,故选择了dba组,next

Step8

检查依赖参数或包,如果此处包参数错误或少包无法自动fixed,需要手动下包或修改参数fixed

Step9

Step8中检查完成自动进入step9,点击install

Step10

开始升级software

其中,遇到报错:

解决办法:

/opt/oracle/product/11.2.0.4/sysman/lib/ins_emagent.mk文件中$(MK_EMAGENT_NMECTL)修改为:$(MK_EMAGENT_NMECTL) -lnnz11;点击"retry"。

Step10.1

按提示执行脚本,全部输入y重写

 

Step10.2

自定义配置监听、服务,next

Next

点击ok,修改监听名,next

 

Next

 

生产库建议不要使用默认端口,修改至15021,next

选择no不再配置监听,点击next

选择start新配置的监听,next

监听配置完成,next

是否配置tnsname.ora?选择no,(后续自己去修改文件或netmgr配置),next

至此,Step10.2 Netca配置完成,点击finish

至此,数据库software升级完成,下面进行database升级。

 

二、升级database

Step10.3.1

点击Next

Step10.3.2

选择需要升级的database,next

备注:一次只能升级一个database,另外的可以在升级完成后运行dbua升级。

Step10.3.3

点击yes

Step10.3.4

全选,点next

Step10.3.5

Move database...,next

Step10.3.6

没配asm,故选择use common..., next

备注:如果上一步没有选择move database,可以这一步的原路径下新增11.2.0.4文件夹存放数据避免覆盖原数据。本文操作如上图。

Step10.3.7

设置快速恢复区,next

Step10.3.8

选择将哪一个或全部监听注册到oracle system中去,本人选择新配的LSNR,next

Step10.3.9

显示相关配置信息,finish

Step11

开始升级database

至下图,数据升级完成,点击ok

升级结果,改步骤可以configure database passwords 和 restore database(恢复到旧版本数据库),点击close完成

点击close结束

  1. 升级第二个database

    在Oracle账户下运行/opt/oracle/product/11.2.0.4/bin/dbua,选择需要升级的数据库,重复第二部分中的步骤。

     

  2. 配置环境变量

    oracle账户下:

    1.[oracle@localhost ~]$ cd ~

    2.[oracle@localhost ~]$ vi .bash_profile

    将ORACLE_HOME修改至升级后的路径,本文中是见Step6:    ORACLE_HOME=/opt/oracle/product/11.2.0.4

  3. [oracle@localhost ~]$ source .bash_profile
  4. 检查是否生效

    [oracle@localhost ~]$ echo $ORACLE_HOME

    /opt/oracle/product/11.2.0.4

  5. sqlplus / as sysdba 登录检查是否是11.2.0.4版本

    如上图,使用11.2.0.1的software打开了11.2.0.4的database。说明.bash_profile未生效。在/home/oracle下执行exec bash --login 再次sqlplus / as sysdba登录

    如上则成功使用11.2.0.4software打开11.2.0.4database

    一定要确保该步骤正常完成,如果不行,请关闭所有实例之后再执行使.bash_profile生效的命令。

  6. 检查数据库、监听是否启正常

    检查监听:

    显示仍然使用的是旧的监听文件(虽然不影响数据的使用,但是建议还是修改至新版本的路径下的监听文件)。检查更新后的软件是否生成监听文件,检查主机名(为新建监听使用):

    使用旧的监听文件仍然可以打开数据库

     

    无监听文件(注:10.3.8的注册似乎注册到旧监听文件中去了,没太注意),oracle账户执行netmgr,新建监听:

     

    设置监听名

     

    新建监听地址

    填写主机名(hostname),修改监听端口

    分别为catdb、vxdb配置service

    Save network configuration

    点右上角X关闭

    执行lsnrctl reload 重新加载监听文件

    执行lsnrctl stop 关闭监听

    执行lsnrctl start 开启监听

    执行lsnrctl status 查看监听状态

    Status为UNKNOWN表示监听为静态注册

     

  7. 完成

    远程连接测试:

    两个实例均连接成功。

    至此,所有配置均完毕,oracle database升级工作完成。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值