一、环境说明

 

节点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. Eclipse git提交代码 覆盖问题

    创建本地分支 拉取远程分支到本地 进行代码更新 然后 commit  然后将本地代码推送到远程分支 再发起合入请求 使用elipse 提交合入代码时, 注意push 提交远程分支时,  选择中  要选 ...

  2. js提取字符串开头公共部分

    需求: 编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 思路:记录数组中第一个字符串的每个字符,依次判断数组中的每个字符串是否都有这个字符 ...

  3. VSCode配置 关于丢失VSCode默认启动终端一事

    在配置前端开发环境的时候碰到一个VSCode 的配置问题,在VSCode 中启用项目的时候,发现默认终端(PowerShell)是空的 项目无法启动,这时候需要自己选择终端 git Bash :自己安 ...

  4. 如何在mac上配置Apache服务器

    ​ 如何在mac上配置Apache服务器 1. 打开终端,开启Apache: //开启apache:  sudo apachectl start //重启apache:  sudo apachectl ...

  5. js 监听 变量变化

    var o = {};setTimeout(function () { o.abb = '2';}, 4000);Object.defineProperties(o, { abb: { configu ...

  6. sudo:Operation not permitted事件

    转载请注明来源:https://www.cnblogs.com/Sherlock-L/p/14933949.html 前言 事情是这样的,在风和日丽的一天,我如往常一样在服务器上敲下了sudo xxx ...

  7. [Swift]Swift图片显示方式设置,控件UIImageView的contentMode属性设置

    contentMode属性是用来设置图片在UIImageView中的显示方式,如:拉伸.居中.填充等. 这里讨论的是UIImageView宽高固定,图片宽高不确定的情况.如社交APP的相册缩略图.手机 ...

  8. 前台主页功能-前台轮播图功能完成-git介绍和安装-git使用流程-git常用命令-git忽略文件

    目录 前台主页功能-前台轮播图功能完成-git介绍和安装-git使用流程-git常用命令-git忽略文件 昨日内容回顾 今日内容概要 今日内容详细 0 导出项目依赖 0 学长问题解析 1 前台主页功能 ...

  9. 【java】MVC模式和三层架构

    MVC是一种分层开发的模式 M:Model,业务模型,处理业务,存储数据,获取数据.JavaBean对象 V:  View , 视图,界面展示,展示数据.JSP或HTML C: Controller, ...

  10. 路由器WDS(无线桥接,无线中继)

    路由器WDS(无线桥接,无线中继)设置,网上的坑货教程只教了一半,却不教另一半.这些教程一般会教你填写远程路由(被中继的路由器信息),顶多再教你把本地路由的网段,改得跟远程路由一样,或关掉本地路由的D ...