Oracle 19.28 RU 升级最佳实践指南

前言

作为关键基础设施维护的关键环节,季度补丁更新(Release Update)是保障 Oracle 数据库安全与稳定的核心任务。本文将以生产环境标准流程,详细记录 Oracle 19.3.0 单机环境升级至 19.28 RU 的完整操作,重点阐述技术风险控制与最佳实践。

补丁获取与预处理

MOS 补丁下载

访问 My Oracle Support(MOS)下载页:

RU 19.28

下载对应 Oracle 版本的补丁,根据实际需要使用:

补丁包预处理

将补丁文件上传至数据库服务器 /soft 目录下,授予对应 oracle 用户的执行权限:

使用 oracle 用户解压补丁包:

到这补丁包就算搞定了。

预升级检查

OPatch 工具更新

OPatch 补丁更新是替换 ORACLE_HOME 目录下的 OPacth 目录,建议都使用最新的版本进行替换:

补丁冲突与空间检查

在正式升级前,一般都会对补丁进行检查,确保正式升级万无一失,这一步主要是检查磁盘空间,补丁冲突是否符合补丁安装条件:

DBRU 检查:

OJVM 检查:

确保检查都成功,就可以正式升级补丁。

停机窗口升级操作

从这一步开始,就需要数据库停机了~

关闭数据库资源

关闭数据库以及监听:

确保没有 oracle 相关的服务运行。

应用 DBRU 补丁

正式升级:

应用 OJVM 补丁

正式升级:

检查补丁版本:

可以看到,补丁都已经升级完成,但是仅是软件层面,数据库层面还没更新。

启动数据库

补丁升级完成后就可以打开数据库服务:

监听建议先不开,防止有用户连接进行操作。

执行 datapatch

执行 datapatch 更新数据库字典(执行比较慢):

重新编译失效对象

补丁升级过程中可能会导致部分对象失效,建议升级后执行无效对象编译进行修复:

复制代码
$ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -n 1 -e -b utlrp -d $ORACLE_HOME/rdbms/admin utlrp.sql

升级后验证

升级后检查补丁应用情况以及无效对象检查:

复制代码
-- 验证补丁应用
SELECT patch_id, status, description FROM dba_registry_sqlpatch;

-- 检查无效对象
SELECT owner, object_name, object_type
FROM dba_objects
WHERE status = 'INVALID';

-- 确认版本
SELECT banner_full FROM v$version;

启动监听服务

确认升级没有问题后,打开监听:

至此,Oracle 19.28 补丁升级完成。

相关推荐
8***235513 小时前
在Django中安装、配置、使用CKEditor5,并将CKEditor5录入的文章展现出来,实现一个简单博客网站的功能
数据库·django·sqlite
P***843914 小时前
解决Spring Boot中Druid连接池“discard long time none received connection“警告
spring boot·后端·oracle
Token_w14 小时前
openGauss:全密态数据库的金融级安全实践
数据库·安全·金融
合作小小程序员小小店14 小时前
图书管理系统,基于winform+sql sever,开发语言c#,数据库mysql
开发语言·数据库·sql·microsoft·c#
ss27315 小时前
020:共享锁深度解析:从AQS原理到高并发实践
数据库·redis·缓存
字节拾光录15 小时前
手机号存储避坑指南:从20亿级数据库实践看,为什么VARCHAR才是终极答案
java·数据库·oracle
q***465218 小时前
Win10下安装 Redis
数据库·redis·缓存
p***924820 小时前
深入理解与实战SQL IFNULL()函数
数据库·sql·oracle
q***81641 天前
MySQL:数据查询-limit
数据库·mysql
p***92481 天前
DBeaver连接本地MySQL、创建数据库表的基础操作
数据库·mysql