Oracle EBS打Patch通用步骤

Oracle EBS打Patch通用步骤 

①查看已打的Patch信息
检查已安装模块版本: 
SELECT app.application_short_name, app.application_name, pi.patch_level 
FROM fnd_product_installations pi, fnd_application_vl app 
WHERE app.application_id = pi.application_id ;

检查已安装Patch: 
SELECT * FROM ad_applied_patches WHERE patch_name = ' 8819747 '; 

查看多语言补丁,Oracle Patch 版本的查询 PL/SQL: 
SELECT dd.patch_name, pp.creation_date, pp.driver_file_name, lang.language 
FROM ad_patch_drivers pp, ad_applied_patches dd, ad_patch_driver_langs lang 
WHERE pp.applied_patch_id = dd.applied_patch_id AND lang.patch_driver_id = pp.patch_driver_id 
ORDER BY pp.creation_date ;

要查看中英文补丁是否都打上了,可以利用以下查询: 
select a.patch_driver_id,a.applied_patch_id,b.language 
from applsys.ad_patch_drivers a, applsys.ad_patch_driver_langs b 
where a.driver_file_name like '% 8819747 %' and a.patch_driver_id = b.patch_driver_id ;

select * from ad_bugs where bug_number=' 8819747 ' ;
注意ad_bugs这个对象的SCHEMA是APPS 

②查看要修复的程序的版本号 

Form程序  
在服务器上查看: 
# strings -a $AU_TOP/forms/US/GLXFCRVL.fmb|grep '$Header' 
记录版本:
FDRCSID('$Header: GLXFCRVL.fmb 120.17 2005/05/07 13:34 r12conv ship  

或直接登录到客户端的Form界面,点击Help->About Oracle Applications 查看版本。  

OAF程序 
在服务器上查看:  
# strings -a $JAVA_TOP/oracle/oracle/apps/ce/forecast/cf/server/ForecastAMImpl.class|grep '$Header' 

或登录到OAF界面,点击 About this Page ->Page 下查看JAVA程序包的版本号,同时可以查看在About this Page ->Patches下查看安装的补丁 : 
记录版本为:
/oracle/apps/pos/supplier/webui/SuppSummPG 120.13.12010000.9  


③通用步骤
从Metalink找到需要的Patch,然后 
0. 阅读Read readme document,看有没有条件,下载,用Unzip解压 ;
1. applmgr用户登录操作系统 ;
2. 设置环境变量(source  $APPL_TOP/APPSORA.env) ;
3. 停应用 adstpall.sh (至少要停并发服务器),数据库和数据库监听保持启动状态 ;
4. 用adadmin Enable Maintenance Mode 启用维护模式;
5. 之后,运行 命令 
$ adpatch driver=u8819747.drv logfile=u 8819747_us.log patchtop=/stage/patch/ 8819747   options=hotpatch
 
6. 用adadmin Disable Maintenance Mode 停用维护模式;
7. 启动应用 adstrall.sh 

④监控和检查日志错误:

使用adctrl  监控adworks:

adworks的日志在$APPL_TOP/admin//log目录下:

                    AD Controller Menu
     ---------------------------------------------------
     1.    Show worker status
     2.    Tell worker to restart a failed job
     3.    Tell worker to quit
     4.    Tell manager that a worker failed its job
     5.    Tell manager that a worker acknowledges quit
     6.    Restart a worker on the current machine
     7.    Exit


Enter your choice [1] :

        Control
Worker  Code      Context            Filename                    Status
------  --------  -----------------  --------------------------  --------------
     1  Run       AutoPatch R120 pl                              Wait          
     2  Run       AutoPatch R120 pl                              Wait          
     3  Run       AutoPatch R120 pl                              Wait          
     4  Run       AutoPatch R120 pl                              Wait          
     5  Run       AutoPatch R120 pl                              Wait          
     6  Run       AutoPatch R120 pl                              Wait          
     7  Run       AutoPatch R120 pl                              Wait          
     8  Run       AutoPatch R120 pl                              Wait          
     9  Run       AutoPatch R120 pl                              Wait          
    10  Run       AutoPatch R120 pl  psadcefc.sql                Running       
    11  Run       AutoPatch R120 pl                              Wait          
    12  Run       AutoPatch R120 pl                              Wait          
   

Review the messages above, then press [Return] to continue.

adpatch的日志文件

打完adpatch之后,在$APPL_TOP/admin//log目录下,会生成adpatch的日志文件,默认名为adpatch.log(可以在打patch的过程中,重新指定名称),这个日志记录整个adpatch执行过程中的所有信息,如果打patch报错或者失败,可以查看这个文件。


补充:关于Oracle EBS Patch的类型

Standalone/Oneoff patches : This is used to define patch created to fix single/particular problem.


Mini Pack : This is group of oneoff patches for a particular product like INV, GL, AP and named like 11i.GL.E ( means this group of patches contain fix for 11i GL product (General Ledger till time E is released ) This is cummutative which means it will include 11i.GL.A, 11i.GL.B ….11iGL.D till 11i.GL.E earlier in 10.7 it used to called as patchset.


Family Pack : Group of mini packs in one family buldeled together is called as family pack. they are usually named as11i_PF.Few example of falilies are SCM ( 11i.SCM_PF.G ),ATG ( 11i.ATG_PF.H )_PF indicate Product Family Pack


Maintenance Pack : Group of family pack together is called as maintenance pack. So if you say your Verison is 11.5.10 then its maintenance pack 10 ( 3rd digit is maintenance pack )


 

你可能感兴趣的:(Oracle,EBS)