一、环境说明

 

节点1

节点2

IP

192.168.3.77

192.168.3.88

DB 版本

Oracle 19.6.0.0.0

Oracle 19.6.0.0.0

OS 主机名

oadb1

oadb2

OS 版本

RedHat 7.6

RedHat 7.6

数据库实例名

Jcoadb1

Jcoadb2

Opatch版本

12.2.0.1.21

12.2.0.1.21

Dbru 补丁包

p31064025_198000DBRU_Linux-x86-64.zip p31281355_190000_Linux-x86-64.zip

p31064025_198000DBRU_Linux-x86-64.zip p31281355_190000_Linux-x86-64.zip

资源下载

补丁安装与回退

补丁下载

$ opatch lsinventory

$ opatch version

OPatch Version: 12.2.0.1.18

通过MOS下载19.8 dbru

p31064025_198000DBRU_Linux-x86-64.zip

将这个压缩包上传至1节点

补丁安装前冲突检查

$[oracle@oadb1 backup]$ ls

31064025 PatchSearch.xml p31064025_198000DBRU_Linux-x86-64.zip

[oracle@oadb1 backup]$ cd 31064025

[oracle@oadb1 31064025]$ ls

README.txt etc files

[oracle@oadb131064025]$/u02/app/oracle/product/19.0.0/db_1/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./

Oracle Interim Patch Installer version 12.2.0.1.18

Copyright (c) 2020, Oracle Corporation. All rights reserved.

PREREQ session

Oracle Home : /u02/app/oracle/product/19.0.0/db_1

Central Inventory : /u01/app/oraInventory

from : /u02/app/oracle/product/19.0.0/db_1/oraInst.loc

OPatch version : 12.2.0.1.18

OUI version : 12.2.0.7.0

Log file location : /u02/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-08-11_22-30-00PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" failed.

The details are:

Interim patch 31064025 requires prerequisite patch(es) [31281355] which are not present in the Oracle Home.

Apply prerequisite patch(es) [31281355] before applying interim patch 31064025.

Summary of Conflict Analysis:

There are no patches that can be applied now.

OPatch succeeded.

检查的时候发现问题了,要先打这个31281355,又去MOS上下载有关这个的 p31281355_190000_Linux-x86-64.zip包,在31281355的readme里面发现,我的数据库的opatch的版本过低,还要下载opatch。

patch 6880880

安装opatch 没有留记录 ,可以参考mos上的

安装完成opatch后,重新检查版本冲突。

[oracle@oadb1 OPatch]$ ./opatch version

OPatch Version: 12.2.0.1.21

OPatch succeeded.

重新检查版本冲突

[oracle@oadb1 backup]$ cd 31281355

[oracle@oadb1 31281355]$ /u02/app/oracle/product/19.0.0/db_1/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./

Oracle Interim Patch Installer version 12.2.0.1.21

Copyright (c) 2020, Oracle Corporation. All rights reserved.

PREREQ session

Oracle Home : /u02/app/oracle/product/19.0.0/db_1

Central Inventory : /u01/app/oraInventory

from : /u02/app/oracle/product/19.0.0/db_1/oraInst.loc

OPatch version : 12.2.0.1.21

OUI version : 12.2.0.7.0

Log file location : /u02/app/oracle/product/19.0.0/db_1/cfgtoollogs/opatch/opatch2020-08-12_16-19-29PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

补丁安装

以31281355补丁安装为例,根据补丁安装程序提供的README.txt,利用滚动式打补丁,具体安装步骤如下:

步骤

描述

 

停所有监听(根据每个节点查询结果调整)、杀进程:

$ su - grid

$ ps -ef|grep lsnr

$ lsnrctl stop listener

$ su - oracle

$ ps -ef|grep LOCAL=NO|grep -v grep|awk '{print $2}'|xargs kill -9

 

停实例:

SQL>shutdown immediate

 

停crs:

$ su - root

$ /u01/app/19.0.0/grid/bin/crsctl stop crs

 

补丁安装:

$ cd /backup/31281355

$ /u02/app/oracle/product/19.0.0/db_1/OPatch/opatch apply

 

检查验证:

/u02/app/oracle/product/19.0.0/db_1/OPatch/opatch lsinventory

 

起crs;

$ su - root

$ crsctl start crs

 

起实例;

$srvctl start database -d

 

查看每个节点实际状况调整:

$su - grid

$ /u01/app/19.0.0/grid/bin/crsctl status res -t

在二节点重复上面的步骤 都成功后再打 p31064025_198000DBRU_Linux-x86-64.zip

补丁回退

$ /u02/app/oracle/product/19.0.0/db_1/OPatch/opatch rollback -id 31281355

$ /u02/app/oracle/product/19.0.0/db_1/OPatch/opatch lsinventory

 

19c 滚动升级的更多相关文章

  1. NameNode HA滚动升级方案

    Hadoop 滚动升级非常方便,只需要在配置中增加一些选项就可以通过Hadoop自身的代码进行完成. 步骤: 1.首先到需要升级的NameService的Active NameNode上面,比如我们1 ...

  2. kubernetes云平台管理实战: 滚动升级秒级回滚(六)

    一.nginx保证有两个版本 1.查看当前容器运行nginx版本 [root@k8s-master ~]# kubectl get pod -o wide NAME READY STATUS REST ...

  3. kubernetes之deployment滚动升级

    参考:https://blog.51cto.com/wutengfei/2116663 创建和管理多个Pod--Deployment Deployment 为 Pod 和 ReplicaSet 提供了 ...

  4. k8s的Deployment 滚动升级

    首先定义一个Deployment,并创建它 apiVersion: apps/v1beta1 kind: Deployment metadata: name: house-live spec: rep ...

  5. Kubernetes Deployment滚动升级

    我们k8s集群使用的是1.7.7版本的,该版本中官方已经推荐使用Deployment代替Replication Controller(rc)了,Deployment继承了rc的全部功能外,还可以查看升 ...

  6. k8s滚动升级

    为了服务升级过程中提供可持续的不中断的服务,Kubernetes 提供了rolling update机制,具体配置需要修改对应服务的yaml文件 参数解析: minReadySeconds: 100 ...

  7. 不想停机?快使用Windows Server 2016滚动升级

    [TechTarget中国原创] Windows Server环境中的关键任务工作量总是密集的.工作量会主要集中在Hyper-V部署集群.硬件故障转移集群或者外来集群的顶部.集群中常用的表格都是基于F ...

  8. kafka线上滚动升级方案记录

    kafka升级方案 为什么进行kafka升级 一.修改unclean.leader.election.enabled默认值Kafka社区终于下定决心要把这个参数的默认值改成false,即不再允许出现u ...

  9. Kafka平滑滚动升级2.4.0指南

    今天测试了下kafka从2.0.0滚动升级至2.4.0,下面做一下记录.这个链接是Kafka官网对升级2.4.0的指南,可以参考  http://kafka.apache.org/24/documen ...

  10. 滴滴HBase大版本滚动升级之旅

    桔妹导读:滴滴HBase团队日前完成了0.98版本 -> 1.4.8版本滚动升级,用户无感知.新版本为我们带来了丰富的新特性,在性能.稳定性与易用性方便也均有很大提升.我们将整个升级过程中面临的 ...

随机推荐

  1. think php3 中接入protobuf(一)

    protobuf,网上一大堆解释,说白了,就是跟json,xml一样的通讯协议,相比json,xml具有体积小,解析速度快的优点,我实在本地的电脑上实现的,后续会有相应的项目使用到,所以先在本地实现, ...

  2. Ubuntu20.04 安装RabbitMQ 亲测可行

    添加Erlang repository: sudo add-apt-repository -y ppa:rabbitmq/rabbitmq-erlang 添加RabbitMQ repository: ...

  3. Windows 11在使用AMD时,CPU占用率持续100%的解决方案

    一.现象 Windows 11在使用AMD时,CPU占用率持续100%,持续好几个系统版本都是如此 二.系统版本: 版本 Windows 11 专业工作站版版本 22H2安装日期 ‎2022/‎10/ ...

  4. ROS自动检测安装功能依赖包

    cd ~/ros_ws/src sudo rosdepc init & rosdepc update cd .. rosdepc install -i --from-path src --ro ...

  5. 靶场练习1:Medium_Socialnetwork

    靶机链接 https://www.vulnhub.com/entry/boredhackerblog-social-network,454/ 信息收集阶段 进行主机的发现,由于已知主机跟Kali在同一 ...

  6. js中各种导出和导入

        exports和module exports的区别: exports是module exports的地址引用 export和export default的区别: export和export d ...

  7. 【GENERAL FRAMEWORK】总框架——持续更新

    引: 鉴于目前挖的坑较多,未防止某些即将长期更新的博文出现烂尾,特设此框架 1.蓝桥杯(完结)         1.[蓝桥杯单片机组]LED.蜂鸣器与继电器--138-573的外设操作         ...

  8. 虚拟机搭建linux环境&&使用winscp连接搭建好的linux环境步骤

    一.需要的工具 虚拟机应用程序.一个镜像(ubuntu等).winscp可执行程序 二.安装虚拟机以及插入镜像 1)选择虚拟机 我安装的是VMware 就是这个,因为之前用的都是vitualbox现在 ...

  9. 26_自定义Loader

    自定义Loader loader就是对模块的源代码进行处理(转换),如css-loader.style-loader等 在上一篇的源代码中我们已经知道了loader是在runLoaders才会去使用l ...

  10. Python学习笔记(六)循环

    一.while循环 1.while在给定的判断条件为True时执行循环体,否则退出循环体 1 flag = True 2 while flag: 3 print('正确') 4 flag = Fals ...