EBS系统打补丁(Patch)

  • 1. 前期准备
  • 2.Oracle EBS R12系统打补丁
    • 2.1. R12 的文件系统
    • 2.2. ADOP
  • 3.R11打patch
    • 3.1. R11系统打补丁

1. 前期准备

查询需要的补丁
1:搜索需要的补丁,(已确定需要的补丁号:25185917 )


下载补丁的时候要确认该补丁是否为NLS多语言,或者多平台的区分,同时针对需要Apply到系统的补丁,需要仔细阅读补丁的README文件,确定apply补丁之前需要满足的条件都已经满足,补丁apply之后是否存在需要手工操作的步骤。


查询已有补丁信息
如果补丁apply之前需要满足的条件中要求系统已经apply过某些补丁,可以通过下面的sql查询系统中是否已经apply过要求的补丁。

SELECT *FROM ad_bugsWHERE bug_number = '<需要查询的补丁编号>';

解压和上传补丁文件
解压下载的补丁到$NE_BASE/EBSapps/patch目录下

注意:应用层所有节点都要放置解压后的补丁到$NE_BASE/EBSapps/patch
由于R12系统是存在两个应用的,所以需要检查环境是在哪个应用目录运行的,如果EBS运行在FS1 文件系统上,那么PATCH是打在FS2上的。

2.Oracle EBS R12系统打补丁

2.1. R12 的文件系统

两个应用目录
12.2以后,EBS有两个应用目录,fs1和fs2。一个是Run Instance,另一个是Patch Instance。
两个应用目录,也就是说,所有的应用文件,都会有两份(除非你刚刚只在Run Instance上安装了某个程序),那么这个程序只存在Run Instance上。
环境变量:$RUN_BASE,可以查看EBS运行在哪个文件系统上

在fs1上有的文件,在fs2上也会有相同的目录文件

2.2. ADOP

Online Patch和12.2之前的EBS版本的打Patch方式就是可以不停系统(online),不用进维护模式。所以第一次给R12.2系统打patch的时候,用adadmin命令,发现没有进维护模式的选项了:
ADADMIN使用步骤:
使用adadmin
系统会询问:

Is this the correct APPL_TOP [Yes] ?               --回车
Filename [adadmin.log]                                --回车
Do you wish to activate this feature [No] ?       --回车
Please enter the batchsize [1000] :                --回车
Is this the correct database [Yes] ?               --回车
Enter the password for your 'SYSTEM' ORACLE schema:                 --manager(默认)
Enter the ORACLE password of Application Object Library [APPS] : --apps或是回车

然后即可看到如下界面:

12.1之前进adadmin应该是这样的(请以实际信息为准):

AD Administration Main Menu--------------------------------------------------1.    Generate Applications Files menu2.    Maintain Applications Files menu3.    Compile/Reload Applications Database Entities menu4.    Maintain Applications Database Entities menu5.    Change Maintenance Mode6.    Exit AD Administration

发现12.1和12.2是有不小的差异,12.2不需要进维护模式。

主要流程

12.2打Patch的主要步骤如下:

1:adop phase=fs_clone(同步系统文件)
2:adop phase=prepare
3:adop phase=apply patches=<patch_number1>,<patch_number2> workers=<number_of_worker>
4:adop phase=finalize workers=<number_of_worker> (called automatically)
5:adop phase=cutover workers=<number_of_worker>
(系统会将apply补丁的patch fs切换为最新的run fs,并且在新的run fs上面启动服务)
6:adop phase=cleanup (called automatically)(清理进程)
可以用adop – status查看状态。
所有patch都打完后,再执行3、4、5、6步。

FS_CLONE(应用用户:appldev)
命令:根据实际路径

cd /u01/DEV/app
./EBSapps.env run
adop phase=fs_clone
Enter the APPS password: <填写apps帐号密码>
Enter the SYSTEM password: <填写system帐号密码>
Enter the WLSADMIN password: <填写weblogic帐号密码>


注意:EBSapp.env需要权限




为保证应用补丁时,应用patch fs和run fs的代码相同,建议每次应用层打补丁之前运行fs_clone来同步Run Instance和Patch Instance的文件。

从当前的run fs同步到patch fs有两种方法:
1、使用prepare过程自动同步;
只是用来同步补丁信息,但是客户化的开发,并不会被同步过去,比如你开发一些form,放到了run fs下,当你运行prepare过程时,并不会把这些开发同步过去,除非你修改一个同步的驱动文件:$APPL_TOP_NE/ad/custom/adop_sync.drv,来客户化的定义到底要同步哪些文件。此方法时间较短,但是系统层面的检查较多。
2、使用fs_clone过程同步。
adop phase=fs_clone相当于物理层面的copy,可以把run file system的整个同步到patch file system ,通常应用每台服务器需要至少有75GB的磁盘剩余空间。该步骤用时比较长。

注意:只要有客户化开发,都要执行fs_clone。否则打完patch后,cutover到patch Instance后,所有安装的客户化程序都变成patch Instance的老程序。

PREPARE
命令:

cd /u01/DEV/app
./EBSapps.env run
$ adop phase=prepare
Enter the APPS password: <填写apps帐号密码>
Enter the SYSTEM password: <填写system帐号密码>
Enter the WLSADMIN password: <填写weblogic帐号密码>


prepare阶段运行完成之后,

adop  phase=status 可以查看adop的状态
cd /u01/DEV/app
./EBSapps.env run
$ adop –status
Enter the APPS password: <填写apps帐号密码>
Enter the SYSTEM password: <填写system帐号密码>
Enter the WLSADMIN password: <填写weblogic帐号密码>

APPLY
命令:

cd /u01/DEV/app
./EBSapps.env run
$ adop phase=apply patches=<补丁编号>
Enter the APPS password: <填写apps帐号密码>
Enter the SYSTEM password: <填写system帐号密码>
Enter the WLSADMIN password: <填写weblogic帐号密码>



apply阶段为实际将补丁的变更apply到patch fs的过程。
patch 要放到$NE_BASE/EBSapps/patch目录下
$PATCH_BASE OR $NE_BASE
对于有多语言NLS的补丁,解压到的补丁目录会包含如_ZHS的标志,对于此类补丁,patches参数需要使用下面的值(例如补丁18955265有ZHS补丁解压后的目录18955265_ZHS):

adop phase=apply patches=18955265_ZHS:u18955265.drv

18955265_ZHS为目录名
u18955265.drv为unified drvier的名称

注意:如果同时有多个补丁要apply,可以多次执行adop phase=apply patches=<补丁编号>,直到所有要apply都补丁都安装到系统。

FINALIZE和CUTOVER
finalize和cutover阶段可以放在一起运行.
命令:

cd /u01/DEV/app
./EBSapps.env run
$ adop phase=finalize,cutover
Enter the APPS password: <填写apps帐号密码>
Enter the SYSTEM password: <填写system帐号密码>
Enter the WLSADMIN password: <填写weblogic帐号密码>



cutover阶段运行完成之后,系统会在最新的run fs上面启动服务

CLEANUP
cleanup阶段为清除数据中临时数据,处于patch cycle的最后一步。
命令:

cd /u01/DEV/app
./EBSapps.env run
$ adop phase=cleanup
Enter the APPS password: <填写apps帐号密码>
Enter the SYSTEM password: <填写system帐号密码>
Enter the WLSADMIN password: <填写weblogic帐号密码>



特殊的phase

adop phase=abort

在cutover阶段之前的任何时间执行abort,回滚任何本次已经执行过的相关adop操作。

STATUS

adop –status

随时查看整个ADOP的过程中各个步骤处于什么样的状态

3.R11打patch

3.1. R11系统打补丁

停止应用服务器
R11环境打patch是需要停止应用服务器的,也就是说在整个操作过程中用户都是处于离线状态。
停止应用服务器(使用 applprod 用户登录系统)

cd $ADMIN_SCRIPTS_HOME
adstpall.sh apps/apps

2:上传patch文件
1:从Oracle的官网下载需要的patch文件,和之前是一样的。
2:将文件上传到$HOME目录路径下并进行解压即可。

3:切换到维护模式
1:使用adadmin进行模式切换
系统会询问:

Is this the correct APPL_TOP [Yes] ?               --回车
Filename [adadmin.log]                                --回车
Do you wish to activate this feature [No] ?       --回车
Please enter the batchsize [1000] :                --回车
Is this the correct database [Yes] ?               --回车
Enter the password for your 'SYSTEM' ORACLE schema:                 --manager(默认)
Enter the ORACLE password of Application Object Library [APPS] : --apps或是回车

然后即可看到如下界面
2:进入菜单并选择5-改变维护模式

3:进入菜单并选择1-启用维护模式


4:返回主菜单界面

5:进入选择菜单6-退出切换模式


ADPACTH
使用adpatch命令会出现和adadmin一样的询问提示,操作也是一样即可。

The default directory is [/home/appltest] :               --回车
Please enter the name of your AutoPatch driver file :     --输入驱动文件

退出维护模式
打完patch之后,重复步骤3退出维护模式

启动应用服务器
启动应用服务器(使用 applprod 用户登录系统)

cd $ADMIN_SCRIPTS_HOME
adstrtal.sh apps/apps

Patch对应的EBS版本和模块的版本
1:系统管理员职责查询打过的Patch
路径:系统管理员修补程序和实用程序

2:查询各模块的版本SQL
–检查已安装模块版本

--检查已安装模块版本
SELECT app.application_short_name,app.application_name,pi.patch_levelFROM fnd_product_installations pi,fnd_application_vl        appWHERE app.application_id = pi.application_id;

3:查询系统中已经打过的Patch SQL

--检查已安装Patch
SELECT *FROM ad_applied_patches pWHERE p.patch_name = '12835870';
SELECT *FROM ad_bugs bWHERE b.bug_number = '12835870';

EBS系统打补丁(Patch)相关推荐

  1. ebs系统架构简介6——应用管理工具总结

    Oracle 开发了 Oracle Applications Technology Layer. Products in the Oracle E-Business Suite technology ...

  2. linux系统打补丁

    linux系统打补丁常用的方式很多,如果是联网的情况下,直接使用yum update命令即可.如果没有联网或者有特殊的情况也可以使用diff 和patch命令来打补丁. 方法: 1.生成补丁 补丁⽂件 ...

  3. 服务器 系统打补丁,2019服务器系统打补丁方法

    2019服务器系统打补丁方法 内容精选 换一换 Windows操作系统的裸金属服务器在创建时只能选择密钥鉴权方式,想使用密码方式登录,有两种方法可以获取密码:将密钥文件解析为密码,参考链接:获取Win ...

  4. oracle ebs r12 打补丁的步骤

    os: linux 5.8 ebs:12.1.3 patch:14332598 这里以 p14332598 为例,列出打补丁的过程. 查看补丁 SELECT * FROM ad_applied_pat ...

  5. 使用工具包自动生成向EBS系统注册表和字段的代码

    在做EBS开发的时候,其中很重要的一个环节是向Oracle EBS注册表和字段,以便于以后可以通过标准表功能来设置弹性域.监控表操作等,在这个时候,你可以自己使用ad_dd.register_tabl ...

  6. win10系统更新补丁时进度条一直卡在0%不动的解决方案

    win10系统更新补丁时进度条一直卡在0%不动的解决方案 参考文章: (1)win10系统更新补丁时进度条一直卡在0%不动的解决方案 (2)https://www.cnblogs.com/zfswff ...

  7. oracle 监听报错,Oracle EBS系统数据库监听报错TNS-12547、TNS-12560和TNS-00517解决方法...

    记得有一次Oracle EBS系统中止运行3小时,实在比较一次惨痛的教训,让我至今记忆犹新. 问题症状:用户反映提交的请求全部是红色错误 开始意为是并发管理"标准管理器"的问题,在 ...

  8. Win系统 - 怎么样卸载 Win10 更新补丁,如何删除系统安全补丁

    Windows10 系统每个月都会例行升级,但有时候升级后可能会导致一些应用,或是设置不能够正常使用,这时只需要把更新补丁卸载就可以了.下面就来看看如何卸载 Windows10 系统更新补丁的方法吧. ...

  9. oracle 物料属性批次过期,系列之五:ORACLE EBS 系统主数据管理(C)

    系列之五:ORACLE EBS 系统主数据管理(C) 热度 9已有 748 次阅读2009/12/30 10:01 ORACLE EBS 系统主数据管理 二.物料(Item) (九)Item的属性内容 ...

  10. win7系统补丁服务器,win7怎么批量卸载系统更新补丁KB? win7快速删除系统补丁的技巧...

    当我们电脑打完所有KB补丁之后,由于不兼容而导致了问题不断,又找不出具体是哪个补丁所引起,那么,我们最笨的方法就是删除卸载之前所有安装的系统更新补丁,如果一个一个去手动卸载,难免会导致手指抽筋.win ...

最新文章

  1. AutoCloseable的用法
  2. 6.6折票仅剩3天 | BDTC 2019全日程公布,哪些是你感兴趣的话题?
  3. oracle rdbms 占内存_027、Oracle数据库
  4. P4: Programming Protocol-Independent Packet Processors
  5. 前端面试知识点(所谓的面试题)(备份前端网)
  6. 记忆化搜索本质是dp
  7. C语言--冒泡排序法(详细注释)
  8. java设计模式——adapter模式
  9. jdk和cglib动态代理
  10. 修改下 URL 就能高速下载网盘资源和百度文库
  11. 川土微 数字隔离器CA-IS306X集成隔离电源的隔离式CAN收发器
  12. 魅族mx6 原生android,手机 篇一:魅族16s真实使用感受漫谈
  13. 面试官问你的职业生涯规划是什么,该如何回答?
  14. Oracle存储过程基本语法和存储过程的各种实例
  15. 以小饭桌网站为例介绍抓取动态网页的数据【python爬虫入门进阶】(12)
  16. Yeelight LED智能灯泡(彩光版)代码控制
  17. python获取指定扩展名的文件_python查找目录下指定扩展名的文件实例
  18. Sequence II(HDU - 5919)
  19. 6位密码锁安全性级别分析探讨
  20. status_code想要得到302却得到200_200㎡室内淘气堡乐园要多少资金?淘气堡成本是怎么计算...

热门文章

  1. Android或者是IOS/普通屏全面屏及qq浏览器和qq内置浏览器判断
  2. php远程登录linux,如何远程连接linux桌面
  3. 如何找到刑事案件的辩点(律师角度)
  4. 【Python基础】初识-与君初相识,犹如故人归
  5. 【HTML】讲讲对HTML5的语义化的理解
  6. 利用matlab实现pid控制,利用Matlab实现PID控制仿真
  7. w7计算机的工具栏爱那里,win7系统底下任务栏不见了的解决方法
  8. BIOS中英文对照表!
  9. 腾讯云云直播、云点播
  10. 背景图片渲染时有色块怎么办