ITPub博客

首页 > 数据库 > Oracle > Oracle 19c- 19.8应用32242453补丁

Oracle 19c- 19.8应用32242453补丁

原创 Oracle 作者:xfhuangfu 时间:2021-09-10 13:49:05 0 删除 编辑

  在应用19.9 RU后,由于HAIP网络改变,ASM无法启动,导致数据库节点故障,本文主要讲解补丁的应用步骤

一、补丁应用

1 、备份数据库和基础软件

为防止安装补丁时发生不可解决的意外,对数据库和u01基础软件目录进行备份

(1)备份数据库

对数据库执行rman备份。

(2)对基础软件进行备份

在每个节点分别执行以下操作

export GRID_HOME=/u01/app/19c/grid
$GRID_HOME/bin/crsctl stop crs -f
tar -cvf /oracle/backup_soft/`date +\%Y\%m\%d`_GIDB.tar    /u01


2 、检测OPATCH版本

$GRID_HOME/OPatch/opatch version
$GRID_HOME/OPatch/opatch lspatches
$ORACLE_HOME/OPatch/opatch version
$ORACLE_HOME/OPatch/opatch lspatches


OPatch 是Oracle安装补丁的工具。不同的补丁对OPatch版本要求不同。要安装p32242453_198000OCWRU,需要下载OPatch版本12.2.0.1.13及以上版本。

解压后直接替换ORACLE_HOME中的OPatch目录即可

3 、上传补丁

向数据库服务器上传补丁Patch 32242453

4 、在数据库服务器解压补丁

unzip -d <PATCH_TOP_DIR> p32242453_198000OCWRU_Linux-x86-64


5 、检测补丁冲突

检测当前环境与p32242453补丁是否存在冲突

 $ cd <PATCH_TOP_DIR>/32242453

 $ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./

6 、进行补丁应用

分别给每个节点进行GI和DB的补丁应用

(1)给GI应用补丁

以root用户执行以下命名

$GRID_HOME/OPatch/opatchauto apply $UNZIPPED_PATCH_LOCATION/32242453 -oh $GI_HOME -analyze
$GRID_HOME/OPatch/opatchauto apply $UNZIPPED_PATCH_LOCATION/32242453 -oh $GI_HOME


(2)给DB应用补丁

以root用户执行以下命名

$ORACLE_HOME/OPatch/opatchauto apply $UNZIPPED_PATCH_LOCATION/32242453 -oh $ORACLE_HOME -analyze
$ORACLE_HOME/OPatch/opatchauto apply $UNZIPPED_PATCH_LOCATION/32242453 -oh $ORACLE_HOME


7 、补丁应用验证

以grid用户执行以下命令

$opatch lsinventory -oh <GI_HOME>
以oracle用户执行以下命令
$opatch lsinventory -oh <ORACLE_HOME>


8 、数据字典应用

检查数据字典中补丁信息

set lines 500 pages 500 
col description for a75
col action_time for a35
col action for a10
col comments for a50
col VERSION for a25
col NAMESPACE for a20
col BUNDLE_SERIES for a20
select * from registry$history;
select patch_id,version,action,status,action_time,description from dba_registry_sqlpatch;
 
cd $ORACLE_HOME/OPatch
./datapatch -verbose  过程见下面
sqlplus / as sysdba
SQL> shutdown immediate;
检查数据字典中补丁信息
set lines 500 pages 500 
col description for a75
col action_time for a35
col action for a10
col comments for a50
col VERSION for a25
col NAMESPACE for a20
col BUNDLE_SERIES for a20
select * from registry$history;
select patch_id,version,action,status,action_time,description from dba_registry_sqlpatch;
9、检测失效对象
set lin 300 pages 5000
col object_name for a40
col owner for a20
select count(*) from dba_objects where status='INVALID';
select count(*) from dba_objects where status='INVALID' and owner='SYS';
select owner,object_name,object_type,status from dba_objects where status='INVALID'
如有失效对象,对失效对象进行修复
cd $ORACLE_HOME/rdbms/admin
sqlplus / as sysdba
SQL> @utlrp.sql


 

二、回退步骤

第一方案

1、以root用户执行以下命名
$GRID_HOME/OPatch/opatchauto rollback <UNZIPPED_PATCH_LOCATION>/32242453 -analyze
$GRID_HOME/OPatch rollback <UNZIPPED_PATCH_LOCATION>/32242453 -oh <path to GI home>  
2、补丁应用验证
以grid用户执行以下命令
$GRID_HOME/OPatch/opatch lsinventory -oh $GRID_HOME
以oracle用户执行以下命令
$GRID_HOME/OPatch/opatch lsinventory -oh $ORACLE_HOME
第二方案
在每个节点分别解压$GRID_HOME和$ORACLE_HOME
tar xvf /oracle/backup_soft/`date +\%Y\%m\%d`_GIDB.tar /u01
在每个节点启动crs
$GRID_HOME/bin/crsctl start crs
启动数据库
$ORACLE_HOME/bin/srvctl start instance -d <db_unique_name> -n <node_name>


  

-the end-

 

     

     

     

   


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28373936/viewspace-2791433/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Xiaofei Huangfu Oracle DBA,Oracle ACE Oracle 19c OCM12c OCM,11g OCM MySQL 5.6,5.7,8.0 OCP 18年以上IT从业经验,有丰富的数据库和开发领域经验,多年Oracle运维经验和java开发经验。

注册时间:2013-09-05

  • 博文量
    151
  • 访问量
    231228