Oracle 11.2.0.4.0升级到12.1.0.2.0

一。升级前准备

检查补丁安装情况

备份数据库

检查是否满足升级条件

检查是否有失效对象

二。升级

1.在11.2.0.3之后oracle推荐使用out of place升级策略进行升级和补丁操作。

out of place是将安装包安装在新的一个目录中,优点为减少了停机时间,方 便回滚操作;in place是将安装包安装在原来的目录中

我们采用out of place升级策略,首先要创建新的安装目录

mkidr -p /u01/app/oracle/product/12.1.0/db_1

2.解压安装包

linuxamd64_12102_database_1of2.zip

linuxamd64_12102_database_2of2.zip

执行./runInstaller

不选择邮件提示

选择升级已存在的数据库

下一步时,提示了一个告警,这个是因为/ect/oratab文件中没有配置oracle实例

修改/etc/oratab文件,添加一行::N

选择语言

选择企业版

选择新创建的安装路径,此处高亮提示,是因为属组和权限问题,修改成oracle:oinstall就好了

选择管理组和用户

进行安装前检查

测试环境,此处可以直接忽略,正式环境需要调整

安装前的summary

进行安装

在安装过程中执行完root.sh脚本后,会自动进行监听的创建,这个时候需要关闭旧的监听,也可以直接下一步下一步,忽略后,在新安装路径下手工执行netca配置监听(先删除在创建)

监听创建完后,会自动开始dbua数据库的升级,这个地方我执行到最后时又报错,我直接跳过了,然后手工执行dbua升级数据库

选择升级数据库

发现了现有的11g数据库

升级前检查

此处提示升级时,存储检查发现有错误,需要手工处理,查看下边的明细后,手工对表空间修改为自动扩展的,或者是按照提示修改允许最大自动扩展容量(这个地方还没有明白为什么)

选择升级的组件

不选择em

不选择迁移数据文件和fast_recovery_area

选择现在的监听

选择进行备份,选择备份的路径

数据库升级前的summary

开始升级

升级完成,查看日志中都提示成功后,就可以直接关闭了,这个地方会很长时间

修改oracle用户的环境变量,修改为新的路径,检查现在数据库版本,状态

执行一些脚本

@? /rdbms/admin/emremove.sql

@?/olap/admin/catnoamd.sql

execute dbms_stats.gather_dictionary_stats;

alter system set compatible = '12.1.0.2.0'scope=spfile;

直接升级后,可以查看还是no-CDB的,之后再进行将no-CDB转换为CDB

下一期:oracle no-CDB转换为CDB

  • 发表于:
  • 原文链接:https://kuaibao.qq.com/s/20180829G1ZD8400?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券