如何在Windows平台上使用OPatch

时间:2022-09-22 23:34:50

http://www.rickyzhu.com/2288_patch-odi-on-windows.html


之前的工作平台清一色都是在Linux/Unix,自从来了新的部门,因为资源缺乏,只能自给自足,在自己的Windows机器上安装了两个虚拟机(OEL5和Solaris.X64),另外宿主机的Windows7(64bit)也装了一个11gR2的数据库,工作需要,很多之前没太接触的软件,包括ODI (Oracle Data Integrator),Oracle Fusion Middleware,Oracle WebLogic Server, Oracle GoldenGate (OGG)等等,该装的也都装上了。

上面是几句题外话了,下面步入正题。

最近因为涉及项目需要,一直在学习和演练ODI,在11.1.0.5.0上遇到了一个bug#12798243,打bug的过程中发现OPatch在Windows平台的使用也没想象的那么复杂,下面简单介绍下过程和使用中的注意事项:

1)首先下载下来最新版本的OPatch,这个在bug#6880880中追踪,只需要下载对应的patch,并解压到ODI_HOME/OPatch下面覆盖即可。
2)下载补丁10288265,这个是打其他ODI的patch之前必须的一个patch,直接解压patch,并运行setup.exe即可

3)下载补丁12798243,这个一个one-off patch,使用刚才步骤1中下载的OPatch进行apply

4)使用之前首先列出来当前ODI的版本和已有的patch

注意:在系统路径中增加OPatch的路径,并且在OPatch/ocm/bin/下面运行生成ocm.rsp文件,这在最新的opatch中是一个必须。

?
123456789101112131415161718192021222324252627282930313233343536373839 E:\Download\ofm_odi_generic_11.1.1.5.0_disk1_1of1\p12798243_111150_Generic\12798243\opatch\12798243>opatch lsinventory -oh d:\Oracle\Middleware\Oracle_ODI1Invoking OPatch 11.1.0.8.5 Oracle 临时补丁程序安装程序版本 11.1.0.8.5版权所有 (c) 2011, Oracle Corporation。保留所有权利。  Oracle 主目录       : d:\Oracle\Middleware\Oracle_ODI1主产品清单: C:\Program Files\Oracle\Inventory   从           : n/aOPatch 版本    : 11.1.0.8.5OUI 版本       : 11.1.0.9.0OUI 位置      : d:\Oracle\Middleware\Oracle_ODI1\oui日志文件位置 : d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch2011-11-29_16-10-08下午.log Patch historyfile: d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch_history.txt  OPatch detects the Middleware Home as"D:\Oracle\Middleware" Lsinventory Outputfilelocation : d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\lsinv\lsinventory2011-11-29_16-10-08下午.txt -------------------------------------------------------------------------------- 已安装的*产品 (2): Oracle Data Integrator 11g                                           11.1.1.5.0Oracle Data Integrator Patchset                                      11.1.1.5.1此 Oracle 主目录中已安装 2 个产品。  此 Oracle 主目录中未安装任何临时补丁程序。  --------------------------------------------------------------------------------

5)调用OPatch apply 打patch,注意这个版本的OPatch auto暂时并不支持在Windows平台上使用。另外就是ocm.rsp文件可以使用参数 -ocmrf 进行指定(使用我们之前生成的response file文件。

?
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 E:\Download\ofm_odi_generic_11.1.1.5.0_disk1_1of1\p12798243_111150_Generic\12798243\opatch\12798243>opatch.bat apply -jdk d:\Java\jdk1.6.0_27 -oh d:\Oracle\Middleware\Oracle_ODI1 -ocmrf d:\oracle\Middleware\Oracle_ODI1\OPatch\ocm\bin\ocm.rspInvoking OPatch 11.1.0.8.5 Oracle 临时补丁程序安装程序版本 11.1.0.8.5版权所有 (c) 2011, Oracle Corporation。保留所有权利。  Oracle 主目录       : d:\Oracle\Middleware\Oracle_ODI1主产品清单: C:\Program Files\Oracle\Inventory   从           : n/aOPatch 版本    : 11.1.0.8.5OUI 版本       : 11.1.0.9.0OUI 位置      : d:\Oracle\Middleware\Oracle_ODI1\oui日志文件位置 : d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch2011-11-29_16-38-20下午.log Patch historyfile: d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch_history.txt  OPatch detects the Middleware Home as"D:\Oracle\Middleware" ApplySession 将临时补丁程序'12798243'应用到 OH 'd:\Oracle\Middleware\Oracle_ODI1' Running prerequisite checks... OPatch 从产品清单中检测到非集群 Oracle 主目录, 将仅对本地系统打补丁。  请关闭本地系统上在此 ORACLE_HOME 之外运行的 Oracle 实例。(Oracle 主目录 = 'd:\Oracle\Middleware\Oracle_ODI1')  本地系统是否已准备打补丁? [y|n]yUser Responded with: Y为 Oracle 主目录备份文件和产品清单 (不是用于自动回退)正在备份受补丁程序 '12798243' 影响的文件以用于还原。此操作将需要一些时间...正在备份受补丁程序 '12798243' 影响的文件以用于回退。此操作将需要一些时间... 正在为组件 oracle.odi.common, 11.1.1.5.0 打补丁...将文件复制到 "d:\Oracle\Middleware\Oracle_ODI1\oracledi.common\odi\lib\odi-core.jar" 正在为组件 oracle.odi.agent, 11.1.1.5.0 打补丁...将文件复制到 "d:\Oracle\Middleware\Oracle_ODI1\oracledi.sdk\lib\odi-core.jar" 正在为组件 oracle.odi.studio, 11.1.1.5.0 打补丁...将文件复制到 "d:\Oracle\Middleware\Oracle_ODI1\oracledi\client\jdev\extensions\oracle.odi.navigator\lib\odi-core.jar"ApplySession 将临时补丁程序'12798243'添加到产品清单 Verifying the update...Inventory check OK: Patch ID 12798243 is registeredinOracle Home inventory with proper meta-data.Files check OK: Files from Patch ID 12798243 are presentinOracle Home. 本地系统已打补丁, 可以重新启动。  OPatch succeeded.

6)确定补丁打完之后,进行验证

?
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 E:\Download\ofm_odi_generic_11.1.1.5.0_disk1_1of1\p12798243_111150_Generic\12798243\opatch\12798243>opatch lsinventory -oh d:\Oracle\Middleware\Oracle_ODI1Invoking OPatch 11.1.0.8.5 Oracle 临时补丁程序安装程序版本 11.1.0.8.5版权所有 (c) 2011, Oracle Corporation。保留所有权利。  Oracle 主目录       : d:\Oracle\Middleware\Oracle_ODI1主产品清单: C:\Program Files\Oracle\Inventory   从           : n/aOPatch 版本    : 11.1.0.8.5OUI 版本       : 11.1.0.9.0OUI 位置      : d:\Oracle\Middleware\Oracle_ODI1\oui日志文件位置 : d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch2011-11-29_16-39-40下午.log Patch historyfile: d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch_history.txt  OPatch detects the Middleware Home as"D:\Oracle\Middleware" Lsinventory Outputfilelocation : d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\lsinv\lsinventory2011-11-29_16-39-40下午.txt -------------------------------------------------------------------------------- 已安装的*产品 (2): Oracle Data Integrator 11g                                           11.1.1.5.0Oracle Data Integrator Patchset                                      11.1.1.5.1此 Oracle 主目录中已安装 2 个产品。  临时补丁程序 (1) : Patch  12798243     : applied on Tue Nov 29 16:38:46 CST 2011Unique Patch ID:  14166630   Created on 5 Oct 2011, 13:21:47 hrs   Bugs fixed:     12798243   --------------------------------------------------------------------------------  OPatch succeeded. E:\Download\ofm_odi_generic_11.1.1.5.0_disk1_1of1\p12798243_111150_Generic\12798243\opatch\12798243>

至此,在Windows上使用最新版本的OPatch给ODI打补丁完成。

- See more at: http://www.rickyzhu.com/2288_patch-odi-on-windows.html#sthash.6EPsEsWo.dpuf