当前位置: 首页 > news >正文

数据库管理-第七十六期 如何升级19c RAC(20230516)

数据库管理 2023-05-16

  • 第七十六期 如何升级19c RAC
    • 1 回头处理
    • 2 升级AHF
    • 3 升级GI及DB
      • 3.1 拷贝所需文件
      • 3.2 升级OPatch
      • 3.3 升级GI与DB
      • 3.4 应用SQL变更
    • 4 升级OJVM
      • 4.1 解压补丁
      • 4.2执行补丁冲突检查:
      • 4.3 升级OJVM
      • 4.4 应用SQL变更
    • 5 最终验证
    • 总结

第七十六期 如何升级19c RAC

上一期展示了如何安装19c RAC,将继续展现RAC版本升级等相关操作。

1 回头处理

因为操作系统不是我装的,所以在上一期其实有个问题是忘记创建/u01的逻辑卷并单独挂载,因此今天第一件事情是处理这件事情:

/u01/app/19.0.0/grid/bin/tfactl stop
/u01/app/19.0.0/grid/bin/crsctl stop crsfdisk /dev/sda #以实际磁盘为准将剩余空间划成一块分区
partprobe /dev/sdapvcreate /dev/sda4
vgcreate u01 /dev/sda4
lvcreate -l 100%VG -n u01 u01
mkfs.xfs /dev/mapper/u01-u01mkdir /a01
mount /dev/mapper/u01-u01 /a01
mv /u01/* /a01
umount /a01
mount /dev/mapper/u01-u01 /u01vim /etc/fstab #添加以下内容
/dev/mapper/u01-u01 /u01 xfs defaults 0 0/u01/app/19.0.0/grid/bin/crsctl start crs
/u01/app/19.0.0/grid/bin/tfactl start

检查:
在这里插入图片描述
在这里插入图片描述

2 升级AHF

定期升级AHF还是很有必要的,特别是能开SR的。

mkdir /u01/ahf
mv AHF-LINUX_v23.4.0.zip /u01/ahf
cd /u01/ahf
unzip AHF-LINUX_v23.4.0.zip
./ahf_setup

进行以下操作:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
以上操作仅在一个节点执行即可,建议节点间root用户也配置SSH互信。
检查:
在这里插入图片描述

3 升级GI及DB

  • 从12c开始,对于安装了GI和DB的实例来说,可以使用root通过opatchauto命令同时升级GI和DB。(在补丁搜索是选择System Patch)
    在这里插入图片描述
  • 对于RAC集群来说可以通过rolling方式,一个实例一个实例升级GI和DB,opatchauto会避免出现两个实例同时升级。
  • 如果是ADG环境,需要先在备库安装升级补丁再在主库升级。
  • 执行OJVM升级仍需要关闭数据库实例,可分实例执行操作。

3.1 拷贝所需文件

mkdir /u01/1916
mv p34086870_190000_Linux-x86-64.zip /u01/1916 #OJVM 19.16
mv p6880880_190000_Linux-x86-64.zip /u01/1916 #OPatch
mv p34130714_190000_Linux-x86-64.zip /u01/1916 #System Patch 19.16
chmod 777 -R /u01/1916

3.2 升级OPatch

在进行补丁升级之前,需要先对OPatch补丁工具进行升级,需要升级版本以及下载地址详见补丁中的README.html:
在这里插入图片描述
需要替换原有的OPatch:

mv /u01/app/19.0.0/grid/OPatch /home/grid/OPatch_bak_19.3
mv /u01/app/oracle/product/19.0.0/dbhome_1/OPatch /home/oracle/OPatch_bak_19.3su - grid
cd /u01/1916
unzip p6880880_190000_Linux-x86-64.zip
su - root
mv /u01/1916/OPatch /u01/app/19.0.0/gridsu - oracle
cd /u01/1916
unzip p6880880_190000_Linux-x86-64.zip
mv OPatch /u01/app/oracle/product/19.0.0/dbhome_1/

检查:
在这里插入图片描述
在这里插入图片描述

3.3 升级GI与DB

  • 解压补丁包:
su - grid
cd /u01/1916
unzip p34130714_190000_Linux-x86-64.zip
  • 执行补丁冲突检查:
su - grid
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/1916/34130714/34133642
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/1916/34130714/34160635
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/1916/34130714/34139601
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/1916/34130714/34318175
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/1916/34130714/33575402su - oracle
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/1916/34130714/34133642
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/1916/34130714/34160635

所有检查passed即可:
在这里插入图片描述

  • 分实例轮流执行以下操作:
su -
cd /u01/1916/34130714
/u01/app/19.0.0/grid/OPatch/opatchauto apply ./#如出现异常需要根据日志处理后执行:
/u01/app/19.0.0/grid/OPatch/opatchauto resume
#本次升级过程中,第一个节点GI补丁应用失败,是因为GI家目录下部分文件仍然存在调用现象,经排查是安装进程遗留仍在调用部分lib文件。因此建议新装RAC集群所有服务器节点都重启一次。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
整个升级流程其实是再次进行补丁检查,确认无问题后关闭数据库与CRS,然后开始按顺序开始DB升级、GI升级,然后启动CRS(包含数据库),最后执行补丁包含的SQL patch。这里一个节点的升级时间大概是10-20分钟的样子,不分节点因为需要执行SQL patch,因此时间会加长不少(本次超过了40分钟)。

3.4 应用SQL变更

在所有节点完成上述升级操作后,仅需在一个节点执行以下命令,DG环境该操作仅需在主库执行:

sqlplus / as sysdba
SQL> alter pluggable database all open;
SQL> exit;
cd $ORACLE_HOME/OPatch
./datapatch -verbose

该操作虽然在README文档中要求执行,但是在日志中该语句是在最后一步执行了的:
在这里插入图片描述

由于本次还要升级OJVM,该操作放到OJVM补丁升级完成后执行。

4 升级OJVM

分实例轮使用oracle用户流执行以下操作:

4.1 解压补丁

cd /u01/1916
unzip p34086870_190000_Linux-x86-64.zip

4.2执行补丁冲突检查:

cd /u01/1916/34086870
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./

在这里插入图片描述

4.3 升级OJVM

sqlplus / as sysdba
SQL> shutdown immediate
SQL> exit;
cd /u01/1916/34086870
$ORACLE_HOME/OPatch/opatch apply

在这里插入图片描述
在这里插入图片描述
升级OJVM的操作就比较快了。

sqlplus / as sysdba
SQL> startup
SQL> exit;

4.4 应用SQL变更

在所有节点完成上述升级操作后,仅需在一个节点执行以下命令,DG环境该操作仅需在主库执行:

sqlplus / as sysdba
SQL> alter pluggable database all open;
SQL> exit;
cd $ORACLE_HOME/OPatch
./datapatch -verbose

在这里插入图片描述
这里也可以看到DBRU的SQL变更是已经应用了的。

5 最终验证

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
至此升级完全结束。

总结

本文不包含one-off patch,需要升级此类补丁请阅读README文件。
后面还有Exadata X9M与这套库之间搭建ADG的操作,也会形成文档,预计要等一段时间了。
老规矩,知道写了些啥。

相关文章:

数据库管理-第七十六期 如何升级19c RAC(20230516)

数据库管理 2023-05-16 第七十六期 如何升级19c RAC1 回头处理2 升级AHF3 升级GI及DB3.1 拷贝所需文件3.2 升级OPatch3.3 升级GI与DB3.4 应用SQL变更 4 升级OJVM4.1 解压补丁4.2执行补丁冲突检查:4.3 升级OJVM4.4 应用SQL变更 5 最终验证总结 第七十六期 如何升级19…...

组合预测模型 | ARIMA-CNN-LSTM时间序列预测(Python)

组合预测模型 | ARIMA-CNN-LSTM时间序列预测(Python) 目录 组合预测模型 | ARIMA-CNN-LSTM时间序列预测(Python)预测结果基本介绍程序设计参考资料 预测结果 基本介绍 ARIMA-CNN-LSTM是一种结合了传统时间序列模型和深度学习模型的…...

实验四 面向对象分析与设计——UML类图与时序图

一、实验目的: 掌握面向对象分析中静态结构模型与动态行为模型的基本思想。学会识别系统中的类、类的属性和操作以及类之间的关系,掌握UML类图的绘制方法。了解时序图的作用和组成元素,掌握UML时序图的绘制方法。 二、实验仪器及实验环境&a…...

最短路径问题

如图,设定源点为D,终点为A,则D到A的最短路径是多少? 算法思路: 第一步,从源点D出发,此时能到达的选择是C和E,我们根据路径长度选择最少的作为下一个节点,于是选择C&…...

国内有哪些SAAS软件?SAAS软件有哪些优点?

国内有哪些SAAS软件?SAAS软件有哪些优点?不请自来答一下,通过SaaS软件与传统软件的对比来详细讲下SaaS软件有哪些优点? 配合以下内容食用更佳: 关于概念——深度详解什么是SaaS(软件即服务)关…...

分享两组不同的3D VR卡片

最近某音上出现了很多VR视频,转动手机可以看到手机界面未显示出来的场景。这种事情我觉得我们也可以做到。 所以两种不同的3D VR卡片来了: 第一种是横向或上下可以拖动极大的距离。卡片上的信息会随着拖动移动,但不会显示更多的信息&#x…...

外贸人如何精准开发客户?Facebook开发客户全攻略

现在做跨境的都了解的一个社媒平台就是Facebook了,因为很多人都会拿Facebook来开发客户,忙里偷闲,今天东哥就来聊聊用Facebook开发客户的一些心得。 用Facebook开发客户的心得 1、利用关键词搜索 使用行业相关的关键词、产品特定的关键词、相…...

一、Git安装(Git+TortoiseGit图形化)

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。 Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式…...

mysql死锁,如何产生?如何发现?如何处理?

1 产生死锁 就是资源互斥 例子如下 好的,请参考以下 SQL 语句来创建 base_account_item 表和向表中插入一些数据: CREATE TABLE base_account_item (id INT(11) NOT NULL,account_item_name VARCHAR(50) NOT NULL,PRIMARY KEY (id) ) ENGINEInnoDB DEF…...

YOLO V1-V3 简单介绍

目录 1. YOLO 2. YOLO V1 3. YOLO V2 4. YOLO V3 5. YOLO V3 SPP网络 5.1 Mosaic 图像增强 5.2 SPP 模块 5.3 CIou Loss 5.4 Focal loss 1. YOLO YOLO 是目标检测任务强大的算法,将目标检测的问题转换边界框和相关概率的回归问题,是目标检测…...

数据结构总结1:了解数据结构、时间复杂度、空间复杂度

后续可能会有补充和更改 目录 一、数据结构 1.算法介绍 二、时间复杂度、空间复杂度 三、练习 1.时间复杂度 2.空间复杂度 一、数据结构 数据结构是计算机存储、组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合。 数据结构和数据库的区…...

abstract class和interface有什么区别?

含有abstract修饰符的class即为抽象类,abstract 类不能创建的实例对象。含有abstract方法的类必须定义为abstract class,abstract class类中的方法不必是抽象的。abstract class类中定义抽象方法必须在具体(Concrete)子类中实现,所以&#xf…...

Kafka在Java项目中的应用

Kafka在Java项目中的应用 Docker 安装Kafka 一.首先需要安装docker,可看这篇文章安装docker 二.拉取zookeeper和KafKa镜像 docker pull wurstmeister/zookeeperdocker pull wurstmeister/kafkaKafka组件需要向zookeeper进行注册,所以也需要安装zookeeper 三.启动zookeeper…...

理解分布式id生成算法SnowFlake

理解分布式id生成算法SnowFlake 分布式id生成算法的有很多种,Twitter的SnowFlake就是其中经典的一种。 概述 SnowFlake算法生成id的结果是一个64bit大小的整数,它的结构如下图: } public function __construct(){ $this->rnew…...

光纤收发器可以连接光模块吗?

随着科技的进步发展,城市信息化速度的加快,光通信产品在数据中心和安防监控等场景中的运用越来越广泛,而这之间的连接则需要光模块和光纤收发器来实现。很多用户对光模块和光纤收发器的使用有些疑虑,两者该如何连接?又…...

一文快速了解浏览器Sui Explorer

Sui作为一条基于第一原理重新设计和构建而成的L1公链,所有区块和交易信息皆公开透明,每个人都能自行查看。通过Sui链上浏览器,用户可以迅速了解链上的交易情况,比如当前的TPS和Gas价格,也可以使用Digest来查看特定交易…...

python中lambda、yield、map、filter、reduce的使用

1、 匿名函数lambda python中允许使用lambda关键字定义一个匿名函数。所谓的匿名函数就是说使用一次或者几次之后就不再需要的函数,属于“一次性”函数。 #例1:求两数之和 f lambda x, y: x y print(f(5, 1))#例2:求平方和 print((lambda…...

第十八章 使用LNMP架构部署动态网站环境

文章目录 第十八章 使用LNMP架构部署动态网站环境一、源码包程序1、源码包的优势2、基本步骤(1)、下载及解压源码包文件(2)、编译源码包代码(3)、生成二进制安装程序(4)、运行二进制…...

无人值守的IDC机房动环综合运维方案

企业数字化转型以及5G、物联网、云计算、人工智能等新业态带动了数据中心的发展,在国家一体化大数据中心及“东数西算”节点布局的推动下,数据中心机房已成为各大企事业单位维持业务正常运营的重要组成部分,网络设备、系统、业务应用数量与日…...

桌面远程工具推荐

目前市面上的远程工具多如牛毛,很多人不知道怎么选择,下面小编介绍两种桌面远程工具,它们都是跨平台的,均支持Windows,Mac OS,IOS和安卓,分别是RayLink,VNC,好用&#xf…...

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销&#xff0c;平衡网络负载&#xff0c;延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 &#xff08;忘了有没有这步了 估计有&#xff09; 刷机程序 和 镜像 就不提供了。要刷的时…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)

UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中&#xff0c;UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化&#xf…...

【Oracle】分区表

个人主页&#xff1a;Guiat 归属专栏&#xff1a;Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...

蓝桥杯3498 01串的熵

问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798&#xff0c; 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...

Elastic 获得 AWS 教育 ISV 合作伙伴资质,进一步增强教育解决方案产品组合

作者&#xff1a;来自 Elastic Udayasimha Theepireddy (Uday), Brian Bergholm, Marianna Jonsdottir 通过搜索 AI 和云创新推动教育领域的数字化转型。 我们非常高兴地宣布&#xff0c;Elastic 已获得 AWS 教育 ISV 合作伙伴资质。这一重要认证表明&#xff0c;Elastic 作为 …...

0x-3-Oracle 23 ai-sqlcl 25.1 集成安装-配置和优化

是不是受够了安装了oracle database之后sqlplus的简陋&#xff0c;无法删除无法上下翻页的苦恼。 可以安装readline和rlwrap插件的话&#xff0c;配置.bahs_profile后也能解决上下翻页这些&#xff0c;但是很多生产环境无法安装rpm包。 oracle提供了sqlcl免费许可&#xff0c…...