暂无图片
暂无图片
2
暂无图片
暂无图片
1
暂无图片

[译] 使用 applyRU 和 applyOneOffs 进行简单的数据库安装

原创 lovely girl 2022-07-04
1964

原文地址:Simple database installation with applyRU and applyOneOffs
原文作者:Mike.Dietrich

你们中的一些人可能还记得我在 2021 年 4 月 22 日发布的关于“我在使用applyRU和applyOneOffs开关进行无人值守安装“时看到的问题的博文。当我将 OJVM 捆绑包传递到我的安装队列时,安装失败并出现奇怪的jox错误。在这次事件过后的一年,让我给您一些背景知识,当然还会向您展示使用 applyRU 和 applyOneOffs 进行简单数据库安装的解决方法。

image.png

发生了什么事?

很久以前,我们介绍了使用-applyRU和-applyOneOffs开关使用 runInstaller 立即安装补丁的非常方便的功能。您可以应用最新的(或什至较旧的)RU,但也可以应用一次性补丁、合并和捆绑包的列表,例如 OJVM 补丁。

但不幸的是,一旦我对这种简单的安装技术感到兴奋,它就开始失败了。正是在您想要应用 OJVM 包的情况下,您收到了:

Error in invoking target 'irman ioracle idrdactl idrdalsnr idrdaproc' of makefile '/u02/patch/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/InstallActions2022-05-16_12-29-19PM/installActions2022-05-16_12-29-19PM.log' for details.
复制

从 Oracle 数据库 19.11.0 开始。

这在 install.log 中被标记:

INFO: 
/u02/patch/lib//libserver19.a(joxwtp.o): In function `jox_eujs_nowait':
joxwtp.c:(.text+0xf7b): undefined reference to `jox_eujs_nowait_'

INFO: 
make: *** [/u02/patch/rdbms/lib/oracle] Error 1

INFO: End output from spawned process.
INFO: ----------------------------------
INFO: Exception thrown from action: make
Exception Name: MakefileException
Exception String: Error in invoking target 'irman ioracle idrdactl idrdalsnr idrdaproc' of makefile '/u02/patch/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/InstallActions2022-05-16_12-29-19PM/installActions2022-05-16_12-29-19PM.log' for details.
Exception Severity: 1
INFO:  [May 16, 2022 12:39:35 PM] Linking RMAN Utility
INFO:  [May 16, 2022 12:39:35 PM] Linking RMAN Utility
INFO: The output of this make operation is also available at: '/u02/patch/install/make.log'
INFO:
复制

我在这篇博文中描述了它:

  • 带有 19.11.0 RU、OJVM 和其他一些修复的 Oracle 19c 安装(2021 年 4 月 22 日)

当然,我确实为这个问题打开了一个错误,并与开发团队讨论了很多次这个话题:

  • 错误 32816171 – 包含“-APPLYRU -APPYONEOFFS”的 19.11.0 安装失败,当 OJVM 19.11.0 包括在内时:包含 JOX_EUJS_NOWAIT 的 MAKEFILEEXCEPTION

还写了一个 MOS 注释——它基本上告诉你之后单独安装 OJVM。

MOS 注意:2788203.1 – 19c 安装与 19.11 OJVM RU 失败并出现错误“未定义对 jox_eujs_nowait_ 的引用”
这当然不是一个花哨的解决方法,因为它导致概念荒谬。

最后,在接下来的几个月里,更多的客户遇到了这个陷阱。

有解脱——有修复

显然经过很多来回之后,我的错误作为后来提出的另一个问题的副本被关闭了。

Bug 33865116:在连接 ORACLE 时将 LIBKNLOPT.A 中的 OBJ 文件替换为 RDBMS/LIB 中的文件

好吧,我真的不在乎哪个错误应该是另一个错误的副本,但我很好奇这是否有效。当您下载 Bug 33865116 的修复程序并解压缩它时,您会发现它仅将 make 文件交换为 rdbms。仅此而已。

所以我做了一个快速测试,并在我的 Linux 环境中开始安装 19.15.0 和匹配的 OJVM 19.15.0:

  • 俄罗斯:p33806152_190000_Linux-x86-64.zip
  • OJVM:p33808367_190000_Linux-x86-64.zip
    正如预期的那样,它失败了。

然后我将Bug 33865116 的修复添加到我的安装队列中,现在竟然神奇般的运行良好,没有问题。

万幸的是,这个问题现在终于解决了。据我所知,该修复程序应包含在 19.16.0 July 2022 RU 中。

快速的分步指导
简而言之,这就是您需要做的。

  1. 创建
    新的 Oracle 主目录 创建新的 Oracle 主目录,例如/u01/app/oracle/product/19_15_0

  2. 下载 19.3.0 基本版本
    下载 19c 基本软件并将其解压缩到这个新创建的 Oracle 主目录中

  3. 下载最新的 OPatch
    下载最新的 OPatch并使用zip -o将其解压缩到同一目录中(用较新的覆盖现有的 - 太旧 - OPatch 目录)

  4. 创建补丁目录
    创建一个子目录,将补丁解压到其中,例如/u01/app/oracle/product/19_15_0/ patch

  5. 下载最新的 RU
    下载最新的 RU,例如 19.15.0。您可以使用MOS Note: 2118136.2 – Download Assistant for Patch Bundles找到最简单的方法。将其解压到一个单独的目录中,例如到/u01/app/oracle/product/19_15_0/ RU19150

  6. 下载最新的 OJVM
    下载最新的 OJVM,例如 19.15.0。您可以使用MOS Note: 2118136.2 – Download Assistant for Patch Bundles找到最简单的方法。将其解压缩到一个单独的目录中,例如到/u01/app/oracle/product/19_15_0/ OJVM19150

  7. 下载安装问题的补丁
    下载错误 33865116 的修复并解压到另一个单独的目录,例如/u01/app/oracle/product/19_15_0/ OUIPatch
    现在你有以下结构:

$ tree -L 2
.
├── RU19150
│   └── 33806152
│   └── PatchSearch.xml
├── OJVM19150
│   └── 33808367
│   └── PatchSearch.xml
├── OUIpatch
    ├── 33865116
    └── PatchSearch.xml
复制

将补丁保存在单独的子目录中很重要,否则PatchSearch.xml将被所有其他补丁覆盖,安装将失败。

这是解决方案——是时候安装了:

./runInstaller -applyRU RU19150/33806152 -applyOneOffs OUIpatch/33865116,OJVM19159/33808367
复制

当然,您可以传递更多的一次性产品,例如 DST 补丁或 JDK。在上面的调用中,只需用逗号将它们分开即可。

最后,不要忘记清理:

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

评论

让世界为你转身
暂无图片
1年前
评论
暂无图片 0
这个原文在哪能找到?
1年前
暂无图片 点赞
评论