从Metalink下载补丁
登陆到Metalink(https://support.oracle.com),Oracle内部用户可以使用ARU来下载。
点击Patches & Updates 页签,在"Patch Search"区,输入你的Patch号,Search,
找到你的Patch之后,特别注意,需要仔细查看Patch的Release,Platform/Language...以及阅读Read Me信息(看是否有需要关联下载的Patch)
然后下载Patch到本机,
上传&解压
打patch前,最好备份可能会被覆盖的文件。仔细阅读Readme文件。
上传patch文件到服务器端的Patch目录下,然后使用unzip命令解压,eg.
[oracle@bej301441 patches]$ unzip p10257769_R12.INV.B_R12_GENERIC.zip
Archive: p10257769_R12.INV.B_R12_GENERIC.zip
inflating: 10257769/README.html
inflating: 10257769/u10257769.drv
inflating: 10257769/f10257769.ldt
inflating: 10257769/inv/patch/115/sql/INVVLTPB.pls
inflating: 10257769/marker1.txt
inflating: 10257769/b10257769.ldt
inflating: 10257769/README.txt
inflating: 10257769/patch_metadata.xml
inflating: 10257769/ad/patch/115/manualsteps/ad_apply_patch.xml
[oracle@bej301441 patches]$
解压后会生成一个patch目录,进入patch目录
[oracle@bej301441 patches]$ cd 10257769/
[oracle@bej301441 10257769]$ ls
ad f10257769.ldt marker1.txt README.html u10257769.drv
b10257769.ldt inv patch_metadata.xml README.txt
[oracle@bej301441 10257769]$
u<patchnum>.drv文件是用于adpatch工具的drvier文件(Unified driver file),告诉adpatch需要拷贝哪些文件,需要产生哪些数据库对象...
使用adpatch来打patch(完整的日志)
adpatch实际上是位于$AD_TOP/bin目录下的打patch工具,adpatch会对比补丁文件和系统原文件的版本,如果补丁文件的版本比系统里原有的文件版本还低,那么adpatch是不会复制patch文件到系统中去的。
对于本例,这里使用hotpatch选项,hotpatch一般用于小的patch,对于大点的patch推荐使用Maintenance选项。
Maintainance模式打patch参考:http://blog.csdn.net/pan_tian/article/details/7872433
关于patch的选项,有很多,具体可以参见:Patch Application Utilities中“AutoPatch Options”部分。
[oracle@bej301441 10257769]$ adpatch driver=u10257769.drv options=hotpatch
Copyright (c) 2002 Oracle Corpora