【德哥说库系列】-Oracle 19C RAC 应用RU19补丁

📢📢📢📣📣📣
哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验
一位上进心十足的【大数据领域博主】!😜😜😜
中国DBA联盟(ACDU)成员,目前服务于工业互联网
擅长主流Oracle、MySQL、PG、高斯及Greenplum运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。
✨ 如果有对【数据库】感兴趣的【小可爱】,欢迎关注【IT邦德】💞💞💞
❤️❤️❤️感谢各位大可爱小可爱!❤️❤️❤️

文章目录

  • 前言
    • 📣 1.补丁集说明
    • 📣 2.升级OPatch
      • ✨ 2.1 升级oracle用户OPatch
      • ✨ 2.2 升级grid用户OPatch
    • 📣 3.验证Oracle Inventory
    • 📣 4.检查Patch
      • ✨ 4.1 Conflict Check
      • ✨ 4.2 Space Check
    • 📣 5.安装前分析
    • 📣 6.GRID应用RU
    • 📣 7.DB应用RU
    • 📣 8.更新数字字典
    • 📣 9.处理无效对象
    • 📣 10.升级确认

前言

本文祥细阐述了Oracle 19C RAC 应用RU19补丁的祥细过程

📣 1.补丁集说明

oracle 19C(19.19.0.0)2023年5月份最新linux补丁集
OPatch(12.2.0.1.37) GI RU(35037840) DB RU(35042068) OJVM RU(35050341)
35050341 OJVM RELEASE UPDATE 19.19.0.0.0
35037840 GI RELEASE UPDATE 19.19.0.0.0
35042068 DATABASE RELEASE UPDATE 19.19.0.0.0
6880880 OPatch 12.2.0.1.37

Oracle 19c 做为该版本的长期支持板,将会持续发布RU更新。
根据这些信息,Oracle在每年的1月,4月,7月和10月每个季度发布一个RU。为了使客户能够在其环境稳定之后即刻获得最新的安全相关修复,将在每年的1月,4月,7月,10月为最近的两个RU提供RUR。

在这里插入图片描述

📣 2.升级OPatch

在所有节点的GI HOME和DB HOME下,都更新为符合应用补丁需求的OPatch版本。 将之前OPatch备份,解压新版本的OPatch到$ORACLE_HOME目录下,最后检查OPatch版本。

在这里插入图片描述

✨ 2.1 升级oracle用户OPatch

注意:2个节点均做如下操作
[root@prodb1 ~]# cd /opt
[root@prodb1 opt]# chown oracle:oinstall -R p6880880_210000_Linux-x86-64.zip
[root@prodb1 opt]# chmod 755 -R p6880880_210000_Linux-x86-64.zip[root@prodb1 ~]# su - oracle
[oracle@prodb1 ~]$ cd $ORACLE_HOME
[oracle@prodb1 dbhome_1]$ mv OPatch/ OPatchbak
[oracle@prodb1 dbhome_1]$ unzip /opt/p6880880_210000_Linux-x86-64.zip -d $ORACLE_HOME[oracle@prodb1 dbhome_1]$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.39
OPatch succeeded.

✨ 2.2 升级grid用户OPatch

注意:2个节点均做如下操作
[root@prodb1 ~]# su - grid
[grid@prodb1 ~]$ cd $ORACLE_HOME
[grid@prodb1 ~]$ echo $ORACLE_HOME
/u01/app/19.0.0/grid后续的在root用户下操作
[root@prodb1 ~]# cd /u01/app/19.0.0/grid
[root@prodb1 grid]# mv OPatch OPatchbak
[root@prodb1 grid]# unzip /opt/p6880880_210000_Linux-x86-64.zip -d /u01/app/19.0.0/grid[root@prodb1 grid]# chown -R grid.oinstall OPatch
[root@prodb1 grid]# cd OPatch
[root@prodb1 OPatch]# ./opatch version
OPatch Version: 12.2.0.1.39
OPatch succeeded.

📣 3.验证Oracle Inventory

Before beginning patch application, check the consistency of inventory information for Grid home and each Oracle home to be patched. Run this command as the respective Oracle home owner to check the consistency:
$ <ORACLE_HOME>/OPatch/opatch lsinventory -detail -oh <ORACLE_HOME>
If this command succeeds, it lists the Oracle components that are installed in the home. Save the output so that you have the status prior to the patch application.
If this command fails, contact Oracle Support Services for assistance.

##验证Oracle Inventory的有效性,2个节点均做相同操作
--grid用户
[root@prodb1 ~]# su - grid
[grid@prodb1 ~]$ $ORACLE_HOME/OPatch/opatch lsinventory -detail -oh $ORACLE_HOME--oracle用户
[root@prodb1 ~]# su - oracle
[oracle@prodb1 ~]$ $ORACLE_HOME/OPatch/opatch lsinventory -detail -oh $ORACLE_HOME

📣 4.检查Patch

✨ 4.1 Conflict Check

##注意,2个节点做如下操作即可[root@prodb1 ~]# cd /opt/
[root@prodb1 opt]# unzip p35037840_190000_Linux-x86-64.zip
[root@mesdb1 opt]# chown -R grid.oinstall 350378401.As the Grid home user:
% $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /opt/35037840/35042068% $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /opt/35037840/35050331% $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /opt/35037840/35050325% $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /opt/35037840/35107512% $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /opt/35037840/335754022.For Oracle home, as home user:
% $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /opt/35037840/35042068
% $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /opt/35037840/35050331

✨ 4.2 Space Check

##注意,其中一个节点做如下操作即可
--For Grid Infrastructure home, as home user:
1.Create file /tmp/patch_list_gihome.txt with the following content:
% cat /tmp/patch_list_gihome.txt
/opt/35037840/35042068
/opt/35037840/35050331
/opt/35037840/35050325
/opt/35037840/35107512
/opt/35037840/335754022.Run the OPatch command to check if enough free space is available in the Grid Infrastructure home:
% $ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /tmp/patch_list_gihome.txtFor Oracle home, as home user:
1.Create file /tmp/patch_list_dbhome.txt with the following content:
% cat /tmp/patch_list_dbhome.txt
/opt/35037840/35042068
/opt/35037840/350503312.Run OPatch command to check if enough free space is available in the Oracle home:
% $ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /tmp/patch_list_dbhome.txt

在这里插入图片描述
在这里插入图片描述

📣 5.安装前分析

使用root用户,通过以下命令一次性补丁冲突检测和解决,如果one-off补丁冲突,可考虑现将该补丁回滚掉,待PSU/RU更新后,再考虑将该补丁更新上去。

##注意,root用户的2节点均执行,不要在/root或者/目录下执行
In case you are applying the patch, run this command:
$ORACLE_HOME/OPatch/opatchauto apply /opt/35037840 -analyzeIn case you are rolling back the patch, run this command:
$ORACLE_HOME/OPatch/opatchauto rollback /opt/35037840 -analyze[root@prodb1 ~]# cd $ORACLE_HOME/OPatch
[root@prodb1 OPatch]# ./opatchauto apply /opt/35037840 -analyze

在这里插入图片描述

📣 6.GRID应用RU

## 执行opatchauto 工具应用RU对GI HOME 进行patch,root用户执行,2个节点分别执行(1) 升级过程会自动关闭和启动集群。
(2) 先升级节点1 grid,再升级节点2 grid。# <GI_HOME>/OPatch/opatchauto apply <UNZIPPED_PATCH_LOCATION>/35037840 -oh <GI_HOME>说明:
To roll back the patch from the Grid home:
# opatchauto rollback <UNZIPPED_PATCH_LOCATION>/35037840 -oh <path to GI home>  

📣 7.DB应用RU

由于 GI RU 包含 DB RU,所以 RAC 环境升级 DB 时,还将使用此 Patch 即可,
root用户执行即可说明: (两个节点都要执行)
(1) 升级过程会自动关闭和启动集群。
(2) 先升级节点1 database,再升级节点2 database。
# <GI_HOME>/OPatch/opatchauto apply <UNZIPPED_PATCH_LOCATION>/35037840 -oh <ORACLE_HOME>

📣 8.更新数字字典

这个步骤是升级数据字典,针对整个database的数据字典,因此只需在一个节点上跑就可以了。注意的是,如果是cdb模式,需要 alter pluggable database all open,打开所有的pdb之后,再运行datapatch。

在这里插入图片描述

📣 9.处理无效对象

cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> @utlrp.sql查询失效对象
SYS@prodb1> select owner, object_type, status from dba_objects where status='INVALID';补充说明:
If you are using the Oracle Recovery Manager, the catalog needs to be upgraded. Enter the following command to upgrade it. The UPGRADE CATALOG command must be entered twice to confirm the upgrade.$ rman catalog username/password@alias
RMAN> UPGRADE CATALOG;
RMAN> UPGRADE CATALOG;
RMAN> EXIT;

📣 10.升级确认

[oracle@prodb1 ~]$ $ORACLE_HOME/OPatch/opatch lsinventory
SYS@prodb1> col COMMENTS for a60
SYS@prodb1> select action_time,version,comments from dba_registry_history;

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/109172.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

gPRC与SpringBoot整合教程

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

Nginx配置文件详解

Nginx配置文件详解 1、Nginx配置文件1.1主配置文件详解1.2子配置文件 2、全局配置部分2.1修改启动的工作进程数&#xff08;worker process) 优化2.2cpu与worker process绑定2.3 PID 路径修改2.4 修改工作进程的优先级2.5调试工作进程打开的文件的个数2.6关闭master-worker工作…

智慧工厂解决方案:推动制造业转型升级的新引擎

随着信息技术的迅猛发展和制造业竞争的加剧&#xff0c;智慧工厂成为了推动制造业转型升级的重要引擎。智慧工厂解决方案通过整合物联网、人工智能、大数据分析等先进技术&#xff0c;实现生产过程的智能化、自动化和高效化&#xff0c;为企业提供了更加灵活、智能的生产模式和…

基于亚马逊云科技服务,构建大语言模型问答知识库

随着大语言模型效果明显提升&#xff0c;其相关的应用不断涌现呈现出越来越火爆的趋势。其中一种比较被广泛关注的技术路线是大语言模型&#xff08;LLM&#xff09;知识召回&#xff08;Knowledge Retrieval&#xff09;的方式&#xff0c;在私域知识问答方面可以很好的弥补通…

Kotlin 高阶函数详解

高阶函数 在 Kotlin 中&#xff0c;函数是一等公民&#xff0c;高阶函数是 Kotlin 的一大难点&#xff0c;如果高阶函数不懂的话&#xff0c;那么要学习 Kotlin 中的协程、阅读 Kotlin 的源码是非常难的&#xff0c;因为源码中有太多高阶函数了。 高阶函数的定义 高阶函数的…

vue中form、table和input标签过长

form标签过长 效果&#xff1a; 代码&#xff1a; <el-form-item v-for"(item,index) in ticketEditTable1" :label"item.fieldNameCn" :propitem.fieldName :key"item.fieldNameCn" overflow"":rules"form[item.fieldName…

8年测试经验之谈 —— 什么是全链路压测?

随着互联网技术的发展和普及&#xff0c;越来越多的互联网公司开始重视性能压测&#xff0c;并将其纳入软件开发和测试的流程中。 阿里巴巴在2014 年双11 大促活动保障背景下提出了全链路压测技术&#xff0c;能更好的保障系统可用性和稳定性。 什么是全链路压测&#xff1f; …

【AutoLayout案例04-游戏图片-按钮适配 Objective-C语言】

一、好,我们再看一个案例, 刚才,这个案例, 这么一个案例 这个案例,是什么意思呢, 这里给大家做一个3.5英寸、4.0英寸的屏幕适配, 因为我们这里图片,只有一个,就是4英寸的这么一个图片 什么意思呢,要求我们在3.5英寸的屏幕、和4英寸的屏幕的时候,都能正常显示这个图…

基于大数据+django+mysql的学习资源推送系统的设计与实现(含报告+源码+指导)

本系统为了数据库结构的灵活性所以打算采用MySQL来设计数据库&#xff0c;而Python技术&#xff0c; B/S架构则保证了较高的平台适应性。文中主要是讲解了该系统的开发环境、要实现的基本功能和开发步骤&#xff0c;并主要讲述了系统设计方案的关键点、设计思想。 由于篇幅限制…

2.神经网络的实现

创建神经网络类 import numpy # scipy.special包含S函数expit(x) import scipy.special # 打包模块 import pickle# 激活函数 def activation_func(x):return scipy.special.expit(x)# 用于创建、 训练和查询3层神经网络 class neuralNetwork:# 初始化神经网络def __init__(se…

【数据分析】统计量

1. 均值、众数描述数据的集中趋势度量&#xff0c;四分位差、极差描述数据的离散程度。 2. 标准差、四分位差、异众比率度量离散程度&#xff0c;协方差是度量相关性。 期望值分别为E[X]与E[Y]的两个实随机变量X与Y之间的协方差Cov(X,Y)定义为&#xff1a; 从直观上来看&…

Vue2向Vue3过度核心技术自定义指令

目录 1 自定义指令1.指令介绍2.自定义指令3.自定义指令语法4.指令中的配置项介绍5.代码示例6.总结 2 自定义指令-指令的值1.需求2.语法3.代码示例 3 自定义指令-v-loading指令的封装1.场景2.需求3.分析4.实现5.准备代码 1 自定义指令 1.指令介绍 内置指令&#xff1a;v-html、v…

channel并发编程

不要通过共享内存通信&#xff0c;要通过通信共享内存。 channel是golang并发编程中一种重要的数据结构&#xff0c;用于多个goroutine之间进行通信。 我们通常可以把channel想象成一个传送带&#xff0c;将goroutine想象成传送带周边的人&#xff0c;一个传送带的上游放上物品…

四信重磅推出5G RedCap AIoT摄像机 RedCap轻量级5G终端新品首发!

6月6日&#xff0c;四信受邀出席移动物联网高质量发展论坛&#xff0c;并在移动物联网新产品发布环节隆重推出5G RedCap AIoT摄像机&#xff0c;再次抓紧需求先机&#xff0c;为行业用户创造无限可能&#xff01; 两大应用场景 助推RedCap走深向实 火遍全网络的RedCap应用场景可…

【JavaEE进阶】MyBatis表查询

文章目录 一. 使用MyBatis完成数据库的操作1. MyBatis程序中sql语句的即时执行和预编译1.1 即时执行&#xff08;${}&#xff09;1.2 预编译&#xff08;#{}&#xff09;1.3 即时执行和预编译的优缺点 2. 单表的增删改等操作2.1 增加操作2.2 修改操作2.3 删除操作2.4 like(模糊…

LeetCode538. 把二叉搜索树转换为累加树

538. 把二叉搜索树转换为累加树 文章目录 [538. 把二叉搜索树转换为累加树](https://leetcode.cn/problems/convert-bst-to-greater-tree/)一、题目二、题解方法一&#xff1a;递归&#xff08;中序遍历与节点更新&#xff09;方法二&#xff1a;反向中序遍历与累加更新&#x…

JavaFX 加载 fxml 文件

JavaFX 加载 fxml 文件主要有两种方式&#xff0c;第一种方式通过 FXMLLoader 类直接加载 fxml 文件&#xff0c;简单直接&#xff0c;但是有些控件目前还不知道该如何获取&#xff0c;所以只能显示&#xff0c;目前无法处理。第二种方式较为复杂&#xff0c;但是可以使用与 fx…

初阶数据结构(六)队列的介绍与实现

&#x1f493;博主csdn个人主页&#xff1a;小小unicorn&#x1f493; ⏩专栏分类&#xff1a;C &#x1f69a;代码仓库&#xff1a;小小unicorn的学习足迹&#x1f69a; &#x1f339;&#x1f339;&#x1f339;关注我带你学习编程知识 栈 队列的介绍队列的概念&#xff1a;队…

GWO-LSTM交通流量预测(python代码)

使用 GWO 优化 LSTM 模型的参数&#xff0c;从而实现交通流量的预测方法 代码运行版本要求 1.项目文件夹 data是数据文件夹&#xff0c;data.py是数据归一化等数据预处理脚本 images文件夹装的是不同模型结构打印图 model文件夹 GWO-LSTM测试集效果 效果视频&#xff1a;GWO…

SNN论文总结

Is SNN a great work ? Is SNN a convolutional work ? ANN的量化在SNN中是怎么体现的&#xff0c;和threshold有关系吗&#xff0c;threshold可训练和这个有关吗&#xff08;应该无关&#xff09; 解决过发放不发放的问题。 Intuation SNN编码方式 Image to spike patter…