
AutoUpgrade 快速升级 Oracle 数据库
作者 |Lucifer
来源 | Lucifer三思而后行(ID:Lucifer-940622)
前言
Oralce 19C 版本已经趋于成熟,而 11GR2 版本Oracle已经在 2020 年停止支持,意味着不再更新 bug 补丁。因此,升级 19C 是未来的大趋势,本文就来讲解下 Oracle 如何快速安装的升级到 19C 版本。根据上图所示介绍,Oracle 推出一种新的升级方式,升级过程简单且非常高效!
一、环境准备
本次测试尽量按照生产环境升级进行模拟,故而使用2台主机进行测试:
📢 注意: 源库为生产环境 Linux 6 版本系统,目标库为升级环境,由于 19C 无法安装在 Linux 6 版本系统,因此选择异机升级,保留生产环境用于失败回退。
「AutoUpgrade 工具:」
根据 MOS文档 2485457.1 可以获取最新版AutoUpgrade工具下载地址:
The most recent version of AutoUpgrade can be downloaded via this link: version 20211115.
二、升级前准备
拷贝19C 的 jdk 到源库:
📢 注意: AutoUpgrade 工具需要JDK版本 1.8 以上,11GR2 的 jdk 版本为 1.5 不支持,因此需要使用 19C 的 ORACLE_HOME 中 JDK 版本。
1、设置JAVA环境变量
Oracle 用户下 java 环境变量配置
2、源端创建并编辑config文件
3、升级前源库进行分析检查
📢 注意: 可以通过 lsj 命令查看当前JOB的运行情况。
「可以通过网页查看检查情况:」
打开网页访问: http://10.211.55.110:8000/lucifer/100/prechecks/lucifer_preupgrade.html
4、升级前源库执行修复脚本
📢 注意: 可以通过 status -job 101 命令查看当前JOB的运行情况。
三、正式升级
1、关闭源库
2、拷贝源库数据文件,日志文件,参数文件,密码文件到目标端,均在源端操作
3、目标库打开实例到upgrade模式,均在目标端操作
「Oracle环境变量如下:」
4、目标端创建并编辑config文件
「📢 注意:」 源端目录可以随意填写一个目录,例如:/tmp。
5、目标端执行升级操作(upgrade模式)
6、监控升级情况
「通过python来创建一个HTTPServer网页来监控升级情况:」
打开网页访问:http://10.211.55.102:8000/state.html,网页会自动刷新执行情况:等待升级完成即可!
至此,AutoUpgrade工具升级结束!
四、升级后处理
1 配置sqlnet.ora
2 检查所有组件
五、升级为PDB并且插入CDB
通过以上操作可以异机升级数据库,但是只升级到NON-CDB模式。那么如何直接升级成PDB呢?
1、目标端需要创建CDB模式的数据库实例
2、使用刚刚升级成功的lucifer作为源端进行转pdb
「目标端创建并编辑config文件」
「目标端执行升级操作(deploy模式):」
「等待转换完毕:」
「升级后检查:」
至此,完整的升级流程已经演示结束,希望能够帮助到!
参考文档:
- Oracle AutoUpgrade between two servers
- Oracle AutoUpgrade between two servers – and Plugin?
- AutoUpgrade with Source and Target Database Homes on Different Servers
