Windows平台下的Oracle 19c补丁升级

news2024/11/29 4:52:48

Windows平台下的Oracle 19c补丁升级

文章目录

  • Windows平台下的Oracle 19c补丁升级
    • 第一章 概述
    • 第二章 安装前备份
      • 2.1 软件目录备份
      • 2.2 权限备份
      • 2.3 备份数据库
    • 第三章 安装前检查
      • 3.1 查看数据库版本
      • 3.2 升级opatch版本
    • 第四章 安装补丁
      • 4.1 设置环境变量
      • 4.2 关闭oracle相关服务
      • 4.3 安装补丁
    • 4.4 执行修改后的sql文件
    • 第五章 补丁回滚
    • 第六章 故障描述&解决方法
      • 6.1 故障描述
      • 6.2 解决方法

第一章 概述

本文档用于Windows.X64系统的Oracle单实例19.3补丁升级至19.22版本的验证。

第二章 安装前备份

2.1 软件目录备份

补丁应用前操作

tar -czvf D:\app\oracle\product\19.3.0\db_home.tar.gz D:\app\oracle\product\19.3.0\db_home

在这里插入图片描述

2.2 权限备份

–补丁应用前操作

icacls D:\app\oracle\product\19.3.0\db_home /save D:\app\oracle\product\19.3.0\dir_backup.txt /T

在这里插入图片描述

2.3 备份数据库

(测试环境中此步骤可跳过)
–应用补丁前操作
周四晚上进行全量备份,实施当天22:00开始进行增量备份

第三章 安装前检查

3.1 查看数据库版本

select banner_full from v$version;
select version,version_full from v$instance;
select * from product_component_version;

3.2 升级opatch版本

–备份ORACLE_HOME/OPatch
将ORACLE_HOME/OPatch目录中的文件全部复制到ORACLE_HOME/OPatch_bak中

--解压opatch到ORACLE_HOME目录后
--查看opatch版本
opatch version

在这里插入图片描述

–补丁冲突检测
–将补丁包解压到ORACLE_HOME目录下后执行

cd 35962832
opatch prereq CheckConflictAgainstOHWithDetail -ph ./

在这里插入图片描述

第四章 安装补丁

4.1 设置环境变量

set ORACLE_HOME=D:\app\oracle\product\19.3.0\db_home
set PATH=%ORACLE_HOME%\perl\bin;%PATH%
set PERL5LIB=

4.2 关闭oracle相关服务

4.2.1 关闭数据库和监听

shu immediate
lsnrctl stop

在这里插入图片描述

4.2.2 关闭服务中与oracle相关的服务
在这里插入图片描述

4.2.3 关闭显式停止分布式事务处理协调器服务

net stop msdtc

在这里插入图片描述

4.3 安装补丁

cd 35962832
opatch apply

在这里插入图片描述

–查看补丁安装结果

opatch lsinventory

在这里插入图片描述

4.4 执行修改后的sql文件

4.4.1 打开Oracle服务
在这里插入图片描述

4.4.2 将修改后的 SQL 文件加载到数据库中

cd %oracle_home%/opatch
datapatch -verbose

在这里插入图片描述

4.4.3 编译无效对象

cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> @utlrp.sql

在这里插入图片描述

第五章 补丁回滚

– 关闭services.msc中oracle的服务后执行

opatch rollback -id 35962832
opatch lsinventory

在这里插入图片描述

第六章 故障描述&解决方法

6.1 故障描述

在进行补丁回滚时报错:
在这里插入图片描述

6.2 解决方法

查看日志文件是因为正在运行的文件或可执行文件阻止了 opatch 的正常执行,检查后发现回滚前没有关闭oracle相关的服务。

在这里插入图片描述

关闭services.msc中的服务后再执行opatch rollback -id 35962832此时回滚成功。

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【R语言】概率密度图

概率密度图是用来表示连续型数据的分布情况的一种图形化方法。它通过在数据的取值范围内绘制一条曲线来描述数据的分布情况,曲线下的面积代表了在该范围内观察到某一数值的概率。具体来说,对于给定的连续型数据,概率密度图会使用核密度估计&a…

工业级3D可视化工具HOOPS Visualize, 快速构建移动端和PC端工程应用程序!

HOOPS Visualize是一款强大的工业级3D渲染引擎,帮助您打造出众的工程应用程序。HOOPS Visualize的基石是图形内核,这是一种全功能的,以工程为重点的场景图技术,我们称为Core Graphics。Core Graphics集成到一个框架中,…

保护视力,从 CareUEyes 开始 —— 你的电脑护眼小助手

在数字化时代,我们的眼睛比以往任何时候都更频繁地面对屏幕。长时间盯着电脑工作,不仅影响视力,还可能导致眼疲劳和不适。今天,我要向大家推荐一款专为电脑用户设计的护眼软件——CareUEyes。 CareUEyes:你的视力守护者…

IntelliJ IDEA配置类注释模板和方法注释模板

配置类注释模板和方法注释模板 IDEA模板预定义变量类注释模方法注释模板方法参数优化 IDEA模板 在IDEA中,自带的注释模板可能不满足自身需求或者不满意,此时可以通过配置IDEA模板来解决。 预定义变量 内置模板是可编辑的,除了静态文本、代码和…

你的RPCvs佬的RPC

一、课程目标 了解常见系统库的hook了解frida_rpc 二、工具 教程Demo(更新)jadx-guiVS CodejebIDLE 三、课程内容 1.Hook_Libart libart.so: 在 Android 5.0(Lollipop)及更高版本中,libart.so 是 Android 运行时(ART&#x…

STM32 HAL库之使用8080时序在LCD上实现任意位置画点和读点以及字符显示

必要知识 本实验用的是240*320屏幕 LCD的驱动原理: LCD屏(MCU接口)驱动的核心是:驱动LCD驱动芯片 LCD驱动基本知识: 1,8080时序,LCD驱动芯片一般使用8080时序控制,实现数据写入/读取 2&…

Photoshop 2024 (ps) v25.6中文 强大的图像处理软件 mac/win

Photoshop 2024 for Mac是一款强大的图像处理软件,专为Mac用户设计。它继承了Adobe Photoshop一贯的优秀功能,并进一步提升了性能和稳定性。 Mac版Photoshop 2024 (ps)v25.6中文激活版下载 win版Photoshop 2024 (ps)v25.6直装版下载 无论是专业的设计师还…

Maven多模块管理

Maven多模块管理 在了解怎么进行Maven多模块管理之前,先聊聊为什么要进行Maven多模块管理 为什么要Maven多模块管理? 在传统的单体架构开发下,一个项目中的依赖只需要使用一个pom.xml文件管理即可。但是随着微服务的流行,将原有…

【每日刷题】Day17

【每日刷题】Day17 🥕个人主页:开敲🍉 🔥所属专栏:每日刷题🍍 🌼文章目录🌼 1. 19. 删除链表的倒数第 N 个结点 - 力扣(LeetCode) 2. 162. 寻找峰值 - 力扣…

详解运算符重载,赋值运算符重载,++运算符重载

目录 前言 运算符重载 概念 目的 写法 调用 注意事项 详解注意事项 运算符重载成全局性的弊端 类中隐含的this指针 赋值运算符重载 赋值运算符重载格式 注意点 明晰赋值运算符重载函数的调用 连续赋值 传引用与传值返回 默认赋值运算符重载 前置和后置重载 前…

使用 Flask-WTF 防止跨站请求攻击(CSRF):一份全面指南

在构建 Web 应用时,防止跨站请求攻击(CSRF)是一项至关重要的安全措施。CSRF 攻击允许恶意网站执行未经授权的操作,如用户身份验证或数据篡改。幸运的是,Flask-WTF 库为我们提供了强大的 CSRF 保护功能。在本篇博客中&a…

【模拟】Leetcode 数青蛙

题目讲解 1419. 数青蛙 算法讲解 class Solution { public:int minNumberOfFrogs(string croakOfFrogs) {string target "croak";int n target.size();//保存target每个字符的位置indexunordered_map<char, int>index;for(int i 0; i < n; i)index[tar…

Day08React——第八天

useEffect 概念&#xff1a;useEffect 是一个 React Hook 函数&#xff0c;用于在React组件中创建不是由事件引起而是由渲染本身引起的操作&#xff0c;比如发送AJAx请求&#xff0c;更改daom等等 需求&#xff1a;在组件渲染完毕后&#xff0c;立刻从服务器获取频道列表数据…

什么是Rust语言?探索安全系统编程的未来

&#x1f680; 什么是Rust语言&#xff1f;探索安全系统编程的未来 文章目录 &#x1f680; 什么是Rust语言&#xff1f;探索安全系统编程的未来摘要引言正文&#x1f4d8; Rust语言简介&#x1f31f; 发展历程&#x1f3af; Rust的技术意义和优势&#x1f4e6; Rust解决的问题…

HarmonyOS开发实例:【分布式新闻客户端】

介绍 本篇Codelab基于栅格布局、设备管理和多端协同&#xff0c;实现一次开发&#xff0c;多端部署的分布式新闻客户端页面。主要包含以下功能&#xff1a; 展示新闻列表以及左右滑动切换新闻Tab。点击新闻展示新闻详情页。点击新闻详情页底部的分享按钮&#xff0c;发现周边…

Go 之 sync.Mutex 加锁失效现象

我先声明一下&#xff0c;并不是真的加锁失效&#xff0c;而是我之前的理解有误&#xff0c;导致看起来像是加锁失效一样。于是乎记录一下&#xff0c;加深一下印象。 我之前有个理解误区&#xff08;不知道大家有没有&#xff0c;有的话赶紧纠正一下——其实也是因为我这块的…

项目7-音乐播放器5+注册账号

1.前端代码 MAPPER Insert("insert into user(username,password) values (#{username},#{password}) ")Integer insertUserInfo(String username,String password); Service public Result insertUserInfo(String username, String oldpassword,String newpasswo…

算法学习——LeetCode力扣补充篇11(64. 最小路径和、48. 旋转图像 、169. 多数元素、394. 字符串解码、240. 搜索二维矩阵 II )

算法学习——LeetCode力扣补充篇11 64. 最小路径和 64. 最小路径和 - 力扣&#xff08;LeetCode&#xff09; 描述 给定一个包含非负整数的 m x n 网格 grid &#xff0c;请找出一条从左上角到右下角的路径&#xff0c;使得路径上的数字总和为最小。 说明&#xff1a;每次只…

测绘管理与法律法规 | 测绘资质管理办法 | 学习笔记

目录 一、测绘资质概述 二、测绘资质分类与等级 三、审批与管理 四、申请条件 五、审批程序 六、测绘资质证书 七、监督管理 八、违规处理 九、特殊规定 十、审批受理时间要点补充 1. 审批机关决定是否受理的时间 2. 审批机关作出批准与否的决定时间 3. 颁发测绘资…

在报表控件 FastReport .NET 中使用 PageCreate 事件

FastReport Business Graphics .NET&#xff0c;是一款基于fastreport报表开发控件的商业图形库&#xff0c;借助 FastReport 商业图形库&#xff0c;您可以可视化不同的分层数据&#xff0c;构建业务图表以进行进一步分析和决策。利用数据呈现领域专家针对 .NET 7、.NET Core、…