暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Windows Server 2022下的Oracle 19c补丁安装:完整操作教程

Table of Contents

前言

在生产环境中,Oracle 大多数都是运行在 Linux 操作系统下,较少安装在 Windows Server 中。本文将介绍在 Window Server 2022 中将 Oracle 19c 安装补丁详细步骤 。

相关软件

  • p6880880_190000_MSWIN-x86-64.zip
  • p35681552_190000_MSWIN-x86-64.zip

演示环境:

操作系统 升级前版本 升级后版本 是否为 CDB
Windows Server 2022 19.3 19.21

补丁说明

Oracle 从 12.2 版本开始补丁包的名字不再叫 PSU、SPU 了,改成了 RU (Release Updates) 和 RUR (Release Update Revisions)。

  • RU 是 Oracle 提供的标准更新,包含所有新的修复、改进和增强,通常每个主版本(例如12c、18c、19c)会定期发布 RU。发布 RU 时,它会集成一些之前发布的补丁,并且包含对数据库健康和功能的修复与优化。RU 包含自上次发布以来的所有错误修复、功能改进和安全补丁,因此它是一次集中的更新,通常无需单独安装每个补丁(通常在每个季度发布一次 RU,类似以前的 CPU)。
  • RUR 是 RU 的一个更新版本,表示在原始 RU 基础上进行的修复。RUR 是对原始 RU 补丁的修正版本,通常不包含新的功能增强,但会包含对于原RU的修复。它帮助解决 RU 发布后的漏洞或问题,并且比完整的 RU 更新更小(RUR 通常在 RU 发布后的几周或几个月内发布,用于解决 RU 本身存在的 bug 或其他问题,RUR 并不会加入新的特性)。

升级步骤

  1. 环境检查

    在命令行窗口中输入:sqlplus -v

    C:\Users\Administrator>sqlplus -v SQL*Plus: Release 19.0.0.0.0 - Production Version 19.3.0.0.0

    检查版本是否与补丁对应的基础版本一致,看到版本不是想要更新的,因此需要进行安装补丁。

  2. opatch 工具检查

    检查当前oracle的opatch版本:进入到OPatch目录执行 opatch version。

    D:\soft\WINDOWS.X64_193000_db_home\OPatch>opatch version OPatch Version: 12.2.0.1.15 OPatch succeeded.

    如果不满足升级要求,则要升级opatch 工具。将原来的OPatch 文件夹改成 OPatch-old。将新的工具包解压到目录下,重新执行命令检查 opatch version。查看当前已安装的补丁集:opatch lsinventory。

    D:\soft\WINDOWS.X64_193000_db_home\OPatch>opatch version OPatch Version: 12.2.0.1.40 OPatch succeeded.
  3. 设置 ORACLE_HOME 环境变量

    检查是否已经存在 Oracle 环境变量,如果没有就新增。变量名为:ORACLE_HOME,变量值:D:\soft\WINDOWS.X64_193000_db_home

  4. 关闭 Oracle 数据库相关的所有服务

    先关 Oracle 服务使用 shut immediate,再关闭监听与其它服务 net stop msdtc。

    D:\soft\WINDOWS.X64_193000_db_home\OPatch>lsnrctl stop LSNRCTL for 64-bit Windows: Version 19.0.0.0.0 - Production on 27-12-2024 23:18:37 Copyright (c) 1991, 2023, Oracle. All rights reserved. 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=WIN-BD8A24PFFTB)(PORT=1521))) 命令执行成功
  5. 安装前检查

    解压 p35681552_190000_MSWIN-x86-64.zip 文件,然后在命令行窗口里进入到 35681552 目录,执行 opatch prereq CheckConflictAgainstOHWithDetail -ph ./ 进行安装前检查与该补丁包有冲突。

    unzip p35681552_190000_MSWIN-x86-64.zip cd 35681552 opatch prereq CheckConflictAgainstOHWithDetail -ph ./
  6. 设置相关变量

    在安装前再设置相关的临时变量,如下所示:

    set PATH=%ORACLE_HOME%\perl\bin;%PATH% set PERL5LIB= <Press Enter>
  7. 补丁升级

    1. 解压补丁包

    2. 管理员权限打开命令行窗口,再进入到补丁包下

      cd 35681552 > SET ORACLE_HOME = 'XXX\xxxdbhome'; > %ORACLE_HOME%\OPatch\opatch apply 之后回复两次 Y
    3. 安装完成后,执行 opatch lsinventory 或 opatch lspatches,查看已安装的补丁。

      --输出内容较多此处只关注重要部分 Patch description: "Windows Database Bundle Patch : 19.21.0.0.231017 (35681552)"
  8. 执行相关脚本

    启动监听,使用 sys 进入后启动数据库,由于安装的是 CDB ,所以要确保所有的 pdb 都已经启动,启动成功后再执行升级数字库字典与编译无效对象。

    lsnrctl start 手动启动服务 sqlplus /nolog SQL> Connect / as sysdba shut immediate SQL> startup SQL> alter pluggable database all open; SQL> quit cd %ORACLE_HOME%/OPatch datapatch -verbose 重启监听与服务 cd %ORACLE_HOME%\rdbms\admin > sqlplus /nolog > conn /as sysdba > @catbundle.sql PSU apply > @?/rdbms/admin/utlrp.sql > quit
  9. 查看补丁

    补丁与相关脚本都执行完成后,可以根据以下语句查询补丁安装的情况:

    select * from dba_registry_history;
  10. 查看是否有备份集,如果有备份集,还需要进行以下操作。

    RMAN> list backupset; recovery catalog is not installed --如果有备份集,还需要执行 $ rman catalog username/password@alias RMAN> UPGRADE CATALOG;

总结

在安装 Oracle 19c 补丁时,Windows 和Linux 平台之间有一些区别。虽然基本的补丁安装步骤是相似的,但由于操作系统的差异,某些细节和操作流程会有所不同。在 Linux 系统则需要注意是否为 oracle 用户执行 opatch ,而 Windows 则需要使用管理员权限操作。总的来说 Windows 有图形化界面操作,比 Linux 下操作起来简单点。

最后修改时间:2024-12-28 00:09:08
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论