zoukankan      html  css  js  c++  java
  • 记一次EBS正式环境补丁安装的过程

    因菏泽能源上线需求,需要在8009上修复集团8000环境上已经修复的所有补丁程序,修复前做应用及数据库层备份,完成修复后解决并发管理器无法启动的问题。此为概述。

    • 应用层备份


    应用层的备份采用直接压缩备份的方式,无需停服务。压缩的路径是/u01/erpapp/apps
    命令:
    cd /u01/erpapp/
    tar -zcvf apps_bak_20190107.tar.gz /u01/erpapp/apps
    需要注意的是apps目录中可能存在部分需要root权限的文件,所以压缩使用root进行压缩。

    • 数据库层备份


    数据库层的备份使用RMAN备份的方式,停机之后进行全备份的方式备份数据文件,控制文件,以及归档日志文件。

    这里需要先停服务, EBS服务器停止的顺序是

    1. 停并发管理器(使用sysadmin用登入 系统管理员职责-管理并发管理器菜单,选择最上面的标准管理器,点击 终止),为保证效果,再使用adcmctl.sh stop apps/appspassword 停止并发管理器服务,可以使用 ps -ef |grep FNDLIB 命令查询并发管理器的进程是否全部关闭,如果没有关系,可以使用kill -9的命令杀死进程。
    2. 停EBS服务,进入到$ADMIN_SCRIPTS_HOME目录下,运行adstpall.sh关闭全部EBS服务,可以使用ps -ef |grep applmgr 观察进程是否完全关闭(可以等半个小时等待服务关闭),如果有未关闭的进程,可以根据进程情况斟酌使用kill -9命令杀死这些进程。直至进程完全关闭 #
    3. 停数据库监听,使用lsnrctl stop prod 命令停止Oracle对prod实例的监听,阻止新的数据库连接连入,5分钟后检查数据库是否还有local=no的连接。ps -ef | grep LOCAL=NO | wc -l 如果有,看一下这些连接能否关闭。使用 ps -ef | grep LOCAL=NO | awk’{print $2}’| xargs kill -9 杀死进程。再次查看是否还有用户连接  select type,count() from v$session group by type 检查用户只剩下自己。
    4. 停数据库。检查监听状态 df/display vg把这些信息记录下来;alter system checkpoint; -检查点,dbwr写脏数据 lgwr写redo日志;alter system switch logfile; —切换日志,把日志也写进硬盘
    5. shutdown immediate;


    开始备份数据库,使用oracle用户登入系统,运行rman target/ 进入rman工作台
    服务器上有脚本在/home/oracle 目录下rman_full.dat 可以使用@/home/oracle/rman_full.dat 调用脚本进行备份,查看脚本cat rman_full.dat 检查脚本发现需要备份归档日志,所以将数据库启动到打开状态,在rman工作台中startup
    启动数据库之后检查数据库实例状态为”OPEN”,运行脚本执行备份。
    备份时可以使用SQL命令监控备份进度
    select sid,SERIAL# ,CONTEXT,SOFAR,TOTALWORK,round(SOFAR/TOTALWORK100,2)”_%“
    from v$session_longops where OPNAME like’RMAN%’and SOFAR<>TOTALWORK and TOTALWORK<>0;

    备份完毕后,启动监听 lsnrctl start prod

    • 启用维护模式


    切换到applmgr用户,使用adadmin命令进行维护模式
    执行adadmin(位于./apps/apps_st/appl/ad/12.0.0/bin/adadmin下,环境变量设好后会出现在path中),输入system的密码,apps的密码选择菜单5,再选择1Enable maintencence“。然后退出。

    • 打补丁


    将补丁上传至服务器任意位置,可以自己建一个patch目录

    使用SQL查看补丁号是否已经安装过
    SELECT *  
     FROM ad_applied_patches 
     where 1=1
      and patch_name in (‘14332598’) ; 

    SELECT *
     FROM ad_bugs  
     where 1=1
      and bug_number in (‘14332598’) ; 
    主要看ad_bugs ad_bugs里面有就可以不安装。

    使用unzip命令解压补丁 例如:unzip  p14332598_R12%.BOM.C _R12_LINUX.zip
    进入到解压后的目录,使用adpatch命令打补丁 adpatch driver=u 14332598.drv 

    注意打补丁时先打英文再打中文。

    • 关闭维护模式


    使用adadmin命令进行维护模式
    执行adadmin(位于./apps/apps_st/appl/ad/12.0.0/bin/adadmin下,环境变量设好后会出现在path中 ),输入system的密码,apps的密码选择菜单5,再选择1Disable maintencence“。然后退出。

    • 启用EBS服务


    cd到$ADMIN_SCRIPTS_HOME目录下执行adstrtal.sh命令启动EBS服务

    • 启动并发管理器


    使用adcmctl.sh start apps/appspassword 命令启动并发管理器

    进入前台sysadmin用户运行”有效用户”请求 看看并发和报表是否正常

  • 相关阅读:
    经典SQL语句大全
    jQuery.fn.extend与jQuery.extend到底区别在哪?
    JQuery.Ajax()的data参数类型
    浅谈数据库去重
    .net Session 详解
    50个必备的实用jQuery代码段
    jQuery 选择器大全
    细说static关键字及其应用
    OVER(PARTITION BY)函数用法
    eos超时 锁表问题 网友办法
  • 原文地址:https://www.cnblogs.com/surinfo/p/10456502.html
Copyright © 2011-2022 走看看