首页主机资讯Linux Oracle如何升级与补丁管理

Linux Oracle如何升级与补丁管理

时间2025-11-21 16:25:03发布访客分类主机资讯浏览1429
导读:Linux 上 Oracle 升级与补丁管理实战指南 一 规划与准备 明确目标与路径:是进行数据库版本升级(如 11.2.0.4 → 19c)还是补丁更新(如 PSU/CPU/BP),并制定回退预案。 完整备份:至少完成RMAN 全备与O...

Linux 上 Oracle 升级与补丁管理实战指南

一 规划与准备

  • 明确目标与路径:是进行数据库版本升级(如 11.2.0.4 → 19c)还是补丁更新(如 PSU/CPU/BP),并制定回退预案。
  • 完整备份:至少完成RMAN 全备ORACLE_HOME 备份,同时备份 oraInventory;有条件时对应用与配置一并备份。
  • 工具与版本前置:提前下载并升级 OPatch(补丁包 README 会注明最低 OPatch 版本要求),并校验 $ORACLE_HOME$PATH
  • 系统与健康检查:确认 OS 补丁、磁盘空间、内存、内核参数满足要求;对 RAC 检查 集群状态共享存储可用性。
  • 变更窗口与回退:在维护窗口执行,准备回退脚本回滚 OPatch方案,确保可快速恢复业务。
  • 参考要点:OPatch 升级与 lsinventory 检查、PSU/CPU 差异与执行脚本、备份 ORACLE_HOME 与 oraInventory 等均为必要步骤。

二 补丁管理流程(OPatch)

  • 步骤概览
    1. 检查当前补丁与 OPatch 版本:$ORACLE_HOME/OPatch/opatch lsinventoryopatch version
    2. 若低于补丁要求,先升级 OPatch(如补丁号 6880880),覆盖 $ORACLE_HOME/OPatch
    3. 按补丁 README 准备环境,必要时停库停监听:lsnrctl stopsqlplus / as sysdbashutdown immediate
    4. 软件层打补丁:$ORACLE_HOME/OPatch/opatch apply(GI/集群按节点串行执行,是否可滚动以 README 为准)。
    5. 数据库层(仅对 PSU/BP 等需要的情况):startup migrate → 执行 @$ORACLE_HOME/rdbms/admin/catbundle.sql psu applyshutdown immediatestartup
    6. 编译无效对象:@$ORACLE_HOME/rdbms/admin/utlrp.sql
    7. 验证:opatch lsinventoryselect * from v$version; 、检查 alert.log
    8. 回滚:opatch rollback -id < 补丁号> ;若涉及数据库层脚本,按 README 执行回滚 SQL。
  • 关键注意
    • 严格以补丁包 README/Readme.html 为准,关注前置补丁、互斥关系、OPatch 最低版本
    • RAC 多为逐节点执行;若补丁不支持滚动,需全停后统一打补丁。
    • 打补丁前后建议记录 失效对象数量dba_registry_history,便于比对与审计。

三 数据库版本升级流程(示例 19c)

  • 升级前
    • 备份:RMAN 全备、备份 ORACLE_HOMEoraInventory,记录 v$versiondba_registry_history
    • 升级 OPatch(19c 常见要求为 12.2.0.1.19+),并完成 lsinventory 一致性检查。
  • 软件升级
    • 解压 19c 软件,运行 runInstaller 升级 ORACLE_HOME(或使用静默安装);安装结束按提示执行 root.sh
  • 实例升级
    • 使用 DBUA(Database Upgrade Assistant) 执行升级,或手工升级:
      startup upgrade@?/rdbms/admin/catupgrd.sqlshutdown immediatestartup@?/rdbms/admin/utlrp.sql
  • 升级后
    • 校验:select * from v$version; utlrp.sql 编译结果、组件状态与 alert.log 无异常。
  • 参考要点:19c 升级前需满足 OPatch 版本门槛;DBUA 为图形/静默一体化工具,适合标准化升级。

四 操作系统与 GI 层补丁

  • Oracle Linux 主机补丁
    • 使用 OS Management Hub 集中管理 Oracle Linux 实例的安全与功能更新,可与 Ksplice 联动实现内核与用户态(glibc、OpenSSL)零停机更新,并支持调度与报表
  • OS 就地升级(示例 OL6 → OL7)
    • 先升级至 OL6.10,安装 preupgrade-assistant 并执行预检,随后通过 redhat-upgrade-tool 执行就地升级到 OL7.x,按向导完成并验证。
  • GI(Grid Infrastructure)与集群
    • GI 补丁同样使用 OPatchGI_HOME 执行;遵循 滚动/非滚动 要求,逐节点停启资源,确保 CRSASM 健康后再继续下一节点。

五 验证与回退清单

  • 补丁/升级后验证
    • 软件层:$ORACLE_HOME/OPatch/opatch lsinventory 确认补丁号与版本;select * from v$version;
    • 数据库层:@?/rdbms/admin/utlrp.sql 编译无效对象;检查 dba_registry_history 与组件状态;巡检 alert.log 与监听状态。
  • 回退策略
    • OPatch 回滚:opatch rollback -id < 补丁号> ;PSU/CPU 回滚按 README 执行数据库层脚本;版本升级回退采用 RMAN 恢复还原 ORACLE_HOME 的方式,确保应用与数据一致。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Linux Oracle如何升级与补丁管理
本文地址: https://pptw.com/jishu/753415.html
Ubuntu Python自动化脚本编写 Linux Oracle如何处理并发事务

游客 回复需填写必要信息