1. 打补丁的准备工作

 

    主要分为4点:

       1)用Telnet登录到应用服务器,查看Unix服务器的类型,目前使用比较多的是(IBM AIX,SUN Solaris和HP UX)三种。

       2)查看要修复的程序的版本号

            Form程序

                 在服务器上查看:

                                

view plain copy to clipboard print ?
  1. strings -a  $AU_TOP/forms/US/GLXFCRVL.fmb|grep '$Header'  

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程序

                登录到OAF界面,点击 About this Page ->Page  下查看版本号:

                记录版本为:/oracle/apps/pos/supplier/webui/SuppSummPG 120.13.12010000.9

    3)下载补丁

          到oracle metalink,切换到 Patch&Updates 页面下,根据ORACLE 提供的SR(Service Requests)的补丁号下载补丁,

          下载应用下安装的所有语言对应的Patch(有几个语言就安装几个补丁)

    4)将应用切换成维护模式

          使用adadmin切换到模式5 ->然后选择Enable Maintenance Mode ->按回车进行切换,直到结束

 

2. 打补丁的过程

 

    1)  上传到服务器的一个目录下(一般命名为Patch,如果没有目录,则新建一个Patch目录)

    2)解压补丁 

               unzip p8513126_R12.AP.A_R12_GENERIC.zip解压。

               unzip p8819747_R12.GL.B_R12_zhs.zip解压。

    3) 阅读补丁的README.html 查看关于补丁的详细信息

          README.html包括:Abstract、Instructions、Description和Bugs Fixed等信息

    3)开始打补丁

           根据README.html的提示安装补丁

               adpatch driver= u8819747.drv 

           按回车切换,直到要求输入SYSTEM的密码,默认为manager。

           按回车切换,直到提示(是否立即安装补丁),输入:Yes

           按回车切换,直到安装结束

    4)退出维护模式

           使用adadmin切换到模式5 ->然后选择Unable Maintenance Mode ->按回车进行切换,直到结束

 

3. 查看打好的补丁

 

    1)使用Sql查询打好的补丁:

    

view plain copy to clipboard print ?
  1. SELECT * FROM ad_applied_patches app WHERE app.patch_name = '8819747';   
  2.  --patch_name为安装的补丁名称,ad_applied_patches只保存安装应用后打上去的补丁,安装前的补丁保存在ad_bugs中  
  3. SELECT * FROM ad_bugs ab WHERE ab.bug_number = '8819747';  
  4.  --bug_number为patch号,ad_bugs保存安装前的补丁保存在ad_bugs中,ad_bugs表中保存了patch修复的bug的记录  

SELECT * FROM ad_applied_patches app WHERE app.patch_name = '8819747'; --patch_name为安装的补丁名称,ad_applied_patches只保存安装应用后打上去的补丁,安装前的补丁保存在ad_bugs中 SELECT * FROM ad_bugs ab WHERE ab.bug_number = '8819747'; --bug_number为patch号,ad_bugs保存安装前的补丁保存在ad_bugs中,ad_bugs表中保存了patch修复的bug的记录 

 

    2)查看补丁是否已经装好

         Form界面

         使用命令:

          

view plain copy to clipboard print ?
  1. strings -a  $AU_TOP/forms/US/GLXFCRVL.fmb|grep '$Header'  

strings -a $AU_TOP/forms/US/GLXFCRVL.fmb|grep '$Header'

 

         或者登陆到Form界面查看Form的版本是否已经改变

         OAF界面

          使用命令:

         

view plain copy to clipboard print ?
  1. 1.进入class目录 $JAVA_TOP/oracle/oracle/apps/ce/forecast/cf/server  
  2. 2.查看版本  
  3. strings -a ForecastAMImpl.class|grep '$Header'  

1.进入class目录 $JAVA_TOP/oracle/oracle/apps/ce/forecast/cf/server 2.查看版本 strings -a ForecastAMImpl.class|grep '$Header'

 

          登录到OAF界面,点击 About this Page ->Page 下查看JAVA程序包的版本号,同时可以查看在

          About this Page ->Patches下查看安装的补丁

        

4. 打补丁的注意事项

 

    1)安装补丁时先安装英文的补丁(所有的其他语言的补丁都在英文补丁的基础上做了一些多语言的改变,以英文补丁作为基础进行安装)

         英文补丁和其他语言的补丁中的内容也是不一样的。

         英文补丁中,包括:主要是程序的逻辑信息和语言信息,Package信息和数据库对象的各种信息。

         其他语言中,包括:多语言的一些信息,例如Form的多语言和OAF界面的多语言,更多的是客户界面的信息。

    2)安装补丁时一定要将应用切换成维护模式,防止在安装补丁时,其他人在界面上进行了误操作导致补丁安装出现问题

    3)安装结束后,如果系统不能正常运行,可以通过重启应用来解决。