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 补丁升级完成。

相关推荐
xixiaoyunya2 小时前
Redis缓存三大问题实战:穿透、击穿、雪崩,我用一个电商秒杀场景讲清楚
数据库·redis·缓存
这个DBA有点耶3 小时前
Merge还是Materialize?一文讲透MySQL 8.0 CTE底层的执行计划博弈与性能陷阱
数据库·mysql·架构
Thanks_ks4 小时前
MySQL 的 REPEATABLE READ 到底能不能防幻读——从快照读、当前读到 Next-Key Lock
数据库·mysql·innodb·mvcc·锁机制·事务隔离级别·间隙锁
千桐科技4 小时前
qKnow智能体构建平台专业版 v3.1.5 发布:扩容工作流编排调用能力,上线Text2SQL插件,拓宽数据类智能应用构建边界
服务器·数据库·oracle·qknow
宇灬宇4 小时前
oracle直方图测试
数据库·oracle
Henry-SAP4 小时前
SAP PP中的核心业务流程——离散制造、重复制造、流程制造三大模式解析
前端·数据库·人工智能·制造
Pniubi5 小时前
mysql 一张表可以有多少列
数据库·mysql
阡陌数智5 小时前
Extended Thinking 深度拆解:Claude Opus 5.5 推理范式、Token 计费陷阱与 Agent 工程落地
数据库
skywalk81636 小时前
不用 SSH、不装数据库:我用 1 个 Python 脚本 + Git,把 15 个 AI Agent 串成了一条流水线
数据库·人工智能·python·ssh·集群