随着Oracle 18c的发布,同时也带来了众多”走心”的新特性,着实吸引了大家的眼球,加之近期官方MOS的文章关于低版本的数据库dblink所存在着的潜在风险(详见MOS ID:2361478.1及MOS ID:2335265.1)。因此,更多用户都希望能尽快升级至Oracle 18c,根据官方发布的版本,目前18c的介质只支持Exadata和Oracle Data Appliance环境。本文旨在一步一步通过实际操作来介绍升级的整个过程。
根据官方的升级路线图,只有11.2.0.3及以上的版本才可以直接升级至18c,因此,本次升级前环境为11.2.0.4 RAC。
具体环境如下:
一、集群grid升级
下载最新的18c grid及db 的介质并上传至主机1上。
备份11.2.0.4集群的ocr注册信息
检测环境是否符合升级要求:
启动gridSetup.sh开始升级grid(由于篇幅限制以下只粘贴部分需要注意的过程图片):
选择升级grid选项:
会自动发现两个集群节点,选择两个节点:
根据检测结果项,本环境中,部分项可以忽略(例如:NTP,DNS,以及硬件内存需求等)。
大部分项目可以自动修复(例如:一些参数等方面的要求)
但是最低要求的补丁17617807和21255373建议自行手工去安装,否则后续的升级过程可能无法成功。(具体补丁安装参见补丁readme)
安装完补丁后重新检测环境,本环境忽略以上其他检测结果项,继续安装。
按照要求,两个节点分别执行rootupgrade.sh:
继续升级安装:
在Oracle 18c中,grid需要一个额外的资料数据库MGMT,建议手工为grid创建此数据库。
继续,直到18c grid升级完成。
二、18c rdbms 升级
1. 启动db的安装界面:
选择只配置软件(其实选项下面有提示)
选择Oracle RAC集群数据库类型:
选中两个服务器节点:
自动检测,大部分检测项都可以自动fixup,有关硬件、NTP、SCAN等类型的检测项目在此环境中可以忽略即可。
直到安装结束,并执行相关root.sh脚本即可,至此18c rdbms for rac 安装完毕。
三、升级集群数据库
启动dbua进行数据库升级:
选择需要升级的数据库,并输入sysdba的密码:
自动进行升级之前的检测,并处理检测出来的问题(只需要处理Fixable为manual类型的即可,其他类型的检测结果项一般可以自动修复)。主要需要手工处理的为:删除OLAP,EM DBCONSOLE并升级APEX等。
处理完毕后,重新检测,发现已经没有需要手工处理的检测项,继续
建议同时选择并行升级,处理无效对象,更新时区等。
在此步,升级前可以选择创建闪回点,或者RMAN备份,本次暂未选择备份功能。
升级前检查所有环境参数等。
查看升级后结果,发现数据库已经成功升级为18c.
验证集群中两个数据库实例都已正常,且ORACLE_HOME也已经是18c版本的ORACLE_HOME。
至此,Oracle 18c RAC集群数据库已经升级完成,总体升级过程比较简单,自动化程度比其他版本更高,很多的非自动处理的结果项也都提供了处理流程,也更加人性化。
由于篇幅限制,部分图片以及脚本未能提供。小伙伴们可以试一试,升级之后,就可以亲自体验那些“走心”的新特性啦!
编辑:萧宇