阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Oracle 12C打补丁的简单尝试

208次阅读
没有评论

共计 2388 个字符,预计需要花费 6 分钟才能阅读完成。

最近在服务器盘点的时候,发现测试环境还是值得整合一下,因为服务器资源老旧,整体配置不高,服务器资源使用率不高,业务要求不高,多个实例分散在多台服务器上,要考虑灾备,要么是每天全库导出异地备份要么是 Data Guard,其实还是蛮适合使用容器的方式来管理的。

之前整合过几个测试环境,是整合到 11g 中,发现有几个钉子户实在没法迁移了,因为几个数据库中的用户名有重复的,同义词也有重复的,处理起来就很纠结。所以最后就暂且放下,现在 12c 也有些年头了,咱也得充分利用它的亮点特性不是。

测试整合的想法要付诸行动,还是要有一些测试演练的过程来印证,尽可能把影响降到最低,提高迁移的效率,而且也要与时俱进,那就是 PSU 了。

我的想法是打上最新的补丁,然后就可以在很长的一段时间内不用考虑版本更新的问题了,而且补丁里面修复了大量的 bug, 也不用重新淌一遍哪些 bug。在迁移的时候直接克隆安装,也算是一步到位。

简单查看当前的版本情况。

[Oracle@odb12c OPatch]$ ./opatch lsinventory
Oracle Interim Patch Installer version 12.1.0.1.3
Copyright (c) 2016, Oracle Corporation.  All rights reserved.

Oracle Home      : /U01/app/oracle/product/12c/db_1
Central Inventory : /U01/app/oraInventory
  from          : /U01/app/oracle/product/12c/db_1/oraInst.loc
OPatch version    : 12.1.0.1.3
OUI version      : 12.1.0.2.0
。。
Oracle Database 12c                                                  12.1.0.2.0
There are no Interim patches installed in this Oracle Home.
从以上的信息可以看出,这个模拟测试的环境,数据库软件是裸奔状态,没有任何的补丁。来到 MOS 上下载即可,快捷方式是图里显示的方式了。
Oracle 12C 打补丁的简单尝试
搜索过滤后得到的结果很清晰,就两行记录,选择的是第一条。这个补丁是比较新的了。7 月份的。
Oracle 12C 打补丁的简单尝试
顺着链接进来,就是一个标准的下载界面,简单确认一下,就开始下载吧,这个补丁大概有 200 多 M。下载的感觉就如同一个孩子目前和健康,但是还得给他打打疫苗。

Oracle 12C 打补丁的简单尝试
下载花了些时间,打补丁的过程其实就很简单了,关键就是 apply 这一步了。
常规的步骤如下:
unzip p23054246_12102_.zip
cd 23054246
opatch apply
三个步骤下来,不出意外几分钟就可以顺利搞定。但是在我的这个场景中竟然还有问题。
Oracle 12C 打补丁的简单尝试
Oracle 12C 打补丁的简单尝试
这个错误让我有些奇怪,查了下资料,发现是 OPatch 的版本过低导致。
这个步骤可以参考 MOS 的文档说明
How To Download And Install The Latest OPatch(6880880) Version (Doc ID 274526.1)
所以需要下载一个新版本的 OPatch,顺着链接里提供的方式去操作,就能够找到下面的连接了。下载相应的 OPatch 即可。
Oracle 12C 打补丁的简单尝试
这个版本的更新是在 8 月份,绝对是跟得上时代了。
OPatch 的处理可以查看 readme.txt,步骤还是老三件。官方的说明如下:
(1)  Please take a backup of ORACLE_HOME/OPatch into a dedicated backup
location.
(2) Please make sure no directory ORACLE_HOME/OPatch exist.
(3) Please unzip the OPatch downloaded zip into ORACLE_HOME directory.
操作起来就很简单了。备份,替换
[oracle@odb12c ~]$ cp -r /U01/app/oracle/product/12c/db_1/OPatch/ OPatch_bak
[oracle@odb12c ~]$ rm -rf /U01/app/oracle/product/12c/db_1/OPatch
[oracle@odb12c ~]$ mv OPatch /U01/app/oracle/product/12c/db_1

更新 OPatch 之后,查看的结果就有了变化。
[oracle@odb12c OPatch]$ ./opatch lsinventory
Oracle Interim Patch Installer version 12.2.0.1.7
Copyright (c) 2016, Oracle Corporation.  All rights reserved.
Oracle Home      : /U01/app/oracle/product/12c/db_1
Central Inventory : /U01/app/oraInventory
  from          : /U01/app/oracle/product/12c/db_1/oraInst.loc
OPatch version    : 12.2.0.1.7
OUI version      : 12.1.0.2.0
然后再次尝试 apply 的步骤,没想到还是有一个报错。
Oracle 12C 打补丁的简单尝试
这个问题看起来有些奇怪,顺着报错来分析,其实就是监听没停掉,停掉监听之后,再次尝试 apply 操作。
Oracle 12C 打补丁的简单尝试
屏幕不断地输出,最后提示一句 OPatch succeeded.
使用 opatch lsinventory 查看就有了变化。
Oracle 12C 打补丁的简单尝试

更多 Oracle 相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-10/136210.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计2388字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中