暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Oracle一次性同时安装多个one-off小补丁 opatch napply -phBaseFile

原创 张玉龙 2022-01-15
3966

准备工作

  • 备份 $ORACLE_HOME
# 清理audit日志文件 find $ORACLE_HOME/rdbms/audit -name "*.aud" -ctime +1 -exec rm -f {} \; # 备份 $ORACLE_HOME cd $ORACLE_HOME tar -zcvf /home/oracle/oracle_home_bak_20220115.tar.gz *
  • 准备补丁和opatch,一次性安装以下补丁
# 上传补丁包 oracle> ll -rw-r--r-- 1 oracle oinstall 12779 p31667096_199000DBRU_Linux-x86-64.zip -rw-r--r-- 1 oracle oinstall 865382 p32259535_199000DBRU_Linux-x86-64.zip -rw-r--r-- 1 oracle oinstall 832001 p32353343_199000DBRU_Linux-x86-64.zip # 解压补丁包 oracle> unzip p31667096_199000DBRU_Linux-x86-64.zip oracle> unzip p32259535_199000DBRU_Linux-x86-64.zip oracle> unzip p32353343_199000DBRU_Linux-x86-64.zip oracle> ll total 1704 drwxr-xr-x 4 oracle oinstall 4096 31667096 drwxr-xr-x 5 oracle oinstall 4096 32259535 drwxr-xr-x 4 oracle oinstall 4096 32353343 -rw-r--r-- 1 oracle oinstall 12779 p31667096_199000DBRU_Linux-x86-64.zip -rw-r--r-- 1 oracle oinstall 865382 p32259535_199000DBRU_Linux-x86-64.zip -rw-r--r-- 1 oracle oinstall 832001 p32353343_199000DBRU_Linux-x86-64.zip -rw-rw-r-- 1 oracle oinstall 4455 PatchSearch.xml # 编辑补丁目录列表文件 oracle> cat /home/oracle/patch/patch_20220104.txt /home/oracle/patch/31667096 /home/oracle/patch/32259535 /home/oracle/patch/32353343 # 根据补丁里README.txt的要求升级OPatch oracle> export PATH=$ORACLE_HOME/OPatch:$PATH oracle> opatch version OPatch Version: 12.2.0.1.23
  • 补丁冲突检查
oracle> opatch prereq CheckConflictAgainstOHWithDetail -phBaseFile /home/oracle/patch/patch_20220104.txt

存在 Dataguard 容灾环境

  • 如果存在 Dataguard 容灾环境,需要先在DG容灾端安装补丁,最后在生产端安装补丁
  • DG容灾端安装补丁,对于容灾端也是RAC的情况下,如果DG配的好,可以做到短暂停止同步
  • 检查DG同步正常
SQL> select t.*,arched-applied gap,sysdate etime from (select thread#,max(sequence#) arched, max(decode(applied,'YES',sequence#,1)) applied, max(decode(DELETED,'YES',sequence#,1)) DELETED from v$archived_log where resetlogs_change# in(select resetlogs_change# from v$database) group by thread#) t; THREAD# ARCHED APPLIED DELETED GAP ETIME ---------- ---------- ---------- ---------- ---------- ------------ 1 24466 24466 24402 0 15-JAN-22 2 27184 27184 27112 0 15-JAN-22 SQL> set line 300 pages 100 col NAME for a30 col VALUE for a20 col UNIT for a30 select name,value,unit,time_computed from v$dataguard_stats; NAME VALUE UNIT TIME_COMPUTED ------------------------------ -------------------- ------------------------------ ------------------------------------------------------------ transport lag +00 00:00:00 day(2) to second(0) interval 01/15/2022 11:26:19 apply lag +00 00:00:00 day(2) to second(0) interval 01/15/2022 11:26:19 apply finish time +00 00:00:00.000 day(2) to second(3) interval 01/15/2022 11:26:19 estimated startup time 33 second 01/15/2022 11:26:19 SQL> SELECT PROCESS, STATUS,THREAD#,SEQUENCE#,BLOCK#,BLOCKS,DELAY_MINS FROM V$MANAGED_STANDBY; PROCESS STATUS THREAD# SEQUENCE# BLOCK# BLOCKS DELAY_MINS ------------------ ------------------------ ---------- ---------- ---------- ---------- ---------- ARCH CLOSING 1 24507 8042496 776 0 DGRD ALLOCATED 0 0 0 0 0 DGRD ALLOCATED 0 0 0 0 0 ARCH CLOSING 2 27219 8046592 1036 0 ARCH CLOSING 2 27220 8077312 1933 0 ARCH CLOSING 1 24504 8065024 1352 0 RFS RECEIVING 1 24508 1734485 8 0 RFS IDLE 0 0 0 0 0 RFS IDLE 1 0 0 0 0 RFS IDLE 0 0 0 0 0 RFS RECEIVING 2 27221 5365754 1 0 RFS IDLE 0 0 0 0 0 MRP0 APPLYING_LOG 1 24508 1734465 9172992 0 RFS IDLE 2 0 0 0 0
  • 如果MRP0在预安装补丁的节点上,需要先停止MRP0,在另一个节点启动MRP0进行数据同步
-- 预安装补丁的节点停止MRP0 SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; -- 另一个节点启动,确保数据同步正常 SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT USING CURRENT LOGFILE;

安装补丁

  • RAC 节点依次执行以下步骤进行补丁的安装

  • 预安装补丁的节点关闭监听和实例
    具体参考文章:https://www.modb.pro/db/237402

  • 安装补丁

su - oracle opatch napply -phBaseFile /home/oracle/patch/patch_20220104.txt -local -silent
  • 检查
opatch lspatches|egrep '31667096|32259535|32353343'
  • 启动实例
SQL> startup

具体参考文章:https://www.modb.pro/db/237402

补丁回滚

su - oracle opatch nrollback -id 31667096,32259535,32353343
最后修改时间:2022-01-15 15:59:54
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论