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

相关推荐
斌味代码18 小时前
MySQL主从延迟根因诊断法
数据库
逆境不可逃18 小时前
高频 SQL 50 题 之 连接篇 1378 1068 1581 197 1661 577 1280 570 1934
数据库·sql
用户57573033462418 小时前
从 SQL 到对象:Prisma 如何成为全栈开发的“降维打击”利器
数据库
三更两点18 小时前
智能代理工具包:MCP vs. Agent Skills vs. AGENTS.md
数据库·人工智能
丸辣,我代码炸了18 小时前
PostgreSQL 大数据查询与索引优化核心总结
大数据·数据库·postgresql
等....18 小时前
Redis使用
数据库·redis·mybatis
betazhou19 小时前
记一次Oracle REDO在线日志损坏故障修复
数据库·oracle·redo·ora-00600
一只小bit19 小时前
Redis 初步入门教程:简单介绍和安装配置
数据库·redis·缓存
ChatInfo19 小时前
Etsy 把 1000 个 MySQL 分片迁进 Vitess:425TB 数据背后的真正问题不是性能,而是运维规模
数据库·人工智能·mysql
SPC的存折19 小时前
6、MySQL设置TLS加密访问
linux·运维·服务器·数据库·mysql