OracleDB 累積パッチであるRU(Release Update)の適用手順を
図解しながら整理しました。
全体概要図と適用手順
- 現環境の確認
- 最新パッチ(RU)の取得
- Opatchインストール
- パッチ(RU)インストール
- インスタンス起動
- Datapatch適用
実行環境
カテゴリ | バージョン |
---|---|
OS | Oracle Linux 9.5 |
DB | Oracle Database 19.25 → 19.27 |
インスタンス名 | orcl(非CDB・シングル) |
1.現環境の確認
1-1. DBバージョン(RU)の確認
sqlplus / as sysdba;
DBに接続して確認
→ 19.25
[oracle@ol95db19c ~]$ sqlplus / as sysdba;
SQL*Plus: Release 19.0.0.0.0 - Production on 土 5月 3 02:14:50 2025
Version 19.25.0.0.0
Copyright (c) 1982, 2024, Oracle. All rights reserved.
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.25.0.0.0
に接続されました。
1-2. Opatchバージョンの確認
opatch lsinventory
コマンドで確認
→12.2.0.1.44
[oracle@ol95db19c ~]$ cd $ORACLE_HOME
[oracle@ol95db19c dbhome_1]$ cd OPatch
[oracle@ol95db19c OPatch]$ ./opatch lsinventory
Oracle Interim Patch Installerバージョン12.2.0.1.44
Copyright (c) 2025, Oracle Corporation. All rights reserved。
Oracleホーム : /u01/app/oracle/product/19.3.0/dbhome_1
中央インベントリ : /u01/app/oraInventory
元 : /u01/app/oracle/product/19.3.0/dbhome_1/oraInst.loc
OPatchのバージョン : 12.2.0.1.44
OUIのバージョン : 12.2.0.7.0
ログ・ファイルの場所 : /u01/app/oracle/product/19.3.0/dbhome_1/cfgtoollogs/opatc h/opatch2025-05-03_02-17-23午前_1.log
Lsinventory Output file location : /u01/app/oracle/product/19.3.0/dbhome_1/cfgto ollogs/opatch/lsinv/lsinventory2025-05-03_02-17-23午前.txt
--------------------------------------------------------------------------------
Local Machine Information::
Hostname: ol95db19c.dev
ARU platform id: 226
ARU platform description:: Linux x86-64
インストールされた最上位製品(1):
Oracle Database 19c 19.0.0.0.0
このOracleホームには1の製品がインストールされています。
個別パッチ(2) :
Patch 36912597 : applied on Wed Jan 22 02:50:04 JST 2025
Unique Patch ID: 25871884
Patch description: "Database Release Update : 19.25.0.0.241015 (36912597)"
Created on 11 Oct 2024, 06:47:24 hrs UTC
Bugs fixed:
10121473, 10123661, 1297945, 14570574, 14735102, 15878434, 15931756
15959416, 16662822, 16664572, 16750494, 17275499, 17395507, 17428816
17468475, 17562236, 17777718, 18534283, 18697534, 18943905, 19080742
(※中略)
36995477, 37010561, 37034448, 37048709, 37057169, 37078302, 37081891
37097367, 37110446, 37156413, 7391838, 8460502, 8476681, 9002767
Patch 29585399 : applied on Thu Apr 18 16:21:33 JST 2019
Unique Patch ID: 22840393
Patch description: "OCW RELEASE UPDATE 19.3.0.0.0 (29585399)"
Created on 9 Apr 2019, 19:12:47 hrs PST8PDT
Bugs fixed:
27222128, 27572040, 27604329, 27760043, 27877830, 28302580, 28470673
28621543, 28642469, 28699321, 28710663, 28755846, 28772816, 28785321
28800508, 28808652, 28815557, 28847541, 28847572, 28870496, 28871040
28874416, 28877252, 28881191, 28881848, 28888083, 28911140, 28925250
(※中略)
--------------------------------------------------------------------------------
OPatch succeeded.
2.パッチ取得
2-1. 以下ドキュメントより最新RUを確認
- Assistant: Download Reference for Oracle Database/GI Update, Revision, PSU, SPU(CPU), Bundle Patches, Patchsets and Base Releases (Doc ID 2118136.2)
https://support.oracle.com/epmos/faces/DocumentDisplay?id=2118136.2
OracleDB 19c の最新RUは19.27(パッチ番号:37642901)(2025/05/10現在)
2-2. プラットフォーム(Linux-x86-64)を選択しダウンロード
2-3. 前提条件の確認(必要 Opatchバージョン)
ダウンロードしたRUのreadmeから必要Opatchバージョンを確認
You must use the OPatch utility version 12.2.0.1.45 or later to apply this patch.
12.2.0.1.45以降のOpatchが必要だが、インストールされているのは12.2.0.1.44
→最新のOpatchインストールが必要
必要なOpatchがインストール済の場合、3.Opatchインストールは不要
3. Opatchインストール
OPatchはOracleソフトウェアに対するパッチ管理ユーティリティです。
パッチ適用に必須となります。
※インストール手順詳細はダウンロードしたパッチのREADME.txt参照
- プライマリノート: OPatch (ドキュメントID 1682850.1)
https://support.oracle.com/epmos/faces/DocumentDisplay?id=1682850.1
3-1. Opatchダウンロード
最新のOpatchをダウンロード
項目 | 値 |
---|---|
パッチ番号 | 6880880 |
リリース | Opatch for DB 19.0.0.0 |
プラットフォーム | Linux x86-64 |
ファイル名 | p6880880_190000_Linux-x86-64.zip |
3-2. Opatch配置
oracleユーザのホームディレクトリ(/home/oracle/)に配置
[oracle@ol95db19c ~]$ ls -la p6880880_190000_Linux-x86-64.zip
-rw-r--r--. 1 oracle oinstall 72539776 5月 6 2025 p6880880_190000_Linux-x86-64.zip
3-3. Opatchのバックアップ
$ORACLE_HOME/OPatchをディレクトリごと退避
[oracle@ol95db19c ~]$ cd $ORACLE_HOME
[oracle@ol95db19c dbhome_1]$ pwd
/u01/app/oracle/product/19.3.0/dbhome_1
[oracle@ol95db19c dbhome_1]$ mv OPatch Opatch_1220145
[oracle@ol95db19c dbhome_1]$ ls
36912597 bin dbjava hs lib opmn plsql root.sh.old.3 sqlplus
OPatch_old cfgtoollogs dbs install log oraInst.loc precomp runInstaller srvm
Opatch_1220145 client deinstall instantclient md oracore racg schagent.conf suptools
PatchSearch.xml clone demo inventory mgw ord rdbms sdk ucp
QOpatch crs diagnostics javavm network ords relnotes sdo usm
R css drdaas jdbc nls oss root.sh slax utl
addnode ctx dv jdk odbc oui root.sh.old sqlcl wwg
apex cv env.ora jlib olap owm root.sh.old.1 sqlj xdk
assistants data has ldap opatchautocfg perl root.sh.old.2 sqlpatch
[oracle@ol95db19c dbhome_1]$
3-4. Opatchインストール
unzip ~/p6880880_190000_Linux-x86-64.zip
[oracle@ol95db19c ~]$ cd $ORACLE_HOME
[oracle@ol95db19c dbhome_1]$ pwd
/u01/app/oracle/product/19.3.0/dbhome_1
[oracle@ol95db19c dbhome_1]$ unzip ~/p6880880_190000_Linux-x86-64.zip
Archive: /home/oracle/p6880880_190000_Linux-x86-64.zip
creating: OPatch/
creating: OPatch/oracle_common/
creating: OPatch/oracle_common/modules/
~~~ 中略 ~~~
inflating: OPatch/opatchprereqs/opatch/runtime_prereq.xml
inflating: OPatch/opatchprereqs/opatch/opatch_prereq.xml
inflating: OPatch/opatch
[oracle@ol95db19c dbhome_1]$ ls
36912597 assistants data has ldap opatchautocfg perl root.sh.old.2 sqlpatch
OPatch bin dbjava hs lib opmn plsql root.sh.old.3 sqlplus
OPatch_old cfgtoollogs dbs install log oraInst.loc precomp runInstaller srvm
Opatch_1220145 client deinstall instantclient md oracore racg schagent.conf suptools
PatchSearch.xml clone demo inventory mgw ord rdbms sdk ucp
QOpatch crs diagnostics javavm network ords relnotes sdo usm
R css drdaas jdbc nls oss root.sh slax utl
addnode ctx dv jdk odbc oui root.sh.old sqlcl wwg
apex cv env.ora jlib olap owm root.sh.old.1 sqlj xdk
[oracle@ol95db19c dbhome_1]$ ./OPatch/opatch version
OPatch Version: 12.2.0.1.46
OPatch succeeded.
3-5. opatchへのパスを追加(任意)
export PATH=$PATH:$ORACLE_HOME/OPatch
4. パッチ(RU)インストール
4-1. パッチ展開用のディレクトリを作成して展開
unzip ~/p37642901_190000_Linux-x86-64.zip
[oracle@ol95db19c ~]$ mkdir patchdir
[oracle@ol95db19c ~]$ cd patchdir/
[oracle@ol95db19c patchdir]$ unzip ~/p37642901_190000_Linux-x86-64.zip
(中略)
inflating: 37642901/etc/config/inventory.xml
inflating: 37642901/README.html
inflating: PatchSearch.xml
[oracle@ol95db19c patchdir]$
4-2. 前提条件チェック
opatch prereq CheckConflictAgainstOHWithDetail -ph ./
- 補足
prerep
前提条件チェックを実行
CheckConflictAgainstOHWithDetail
適用されるパッチとOracleホーム内のパッチの間に競合が存在するかどうかを確認
ph
パッチの場所を指定 - 参考
OPatchの構文およびコマンド
https://docs.oracle.com/cd/E26854_01/doc.121/e49737/opatch_commands.htm
[oracle@ol95db19c patchdir]$ cd 37642901/
[oracle@ol95db19c 37642901]$ opatch prereq CheckConflictAgainstOHWithDetail -ph ./
Oracle Interim Patch Installerバージョン12.2.0.1.46
Copyright (c) 2025, Oracle Corporation. All rights reserved。
PREREQ session
Oracleホーム : /u01/app/oracle/product/19.3.0/dbhome_1
中央インベントリ : /u01/app/oraInventory
元 : /u01/app/oracle/product/19.3.0/dbhome_1/oraInst.loc
OPatchのバージョン : 12.2.0.1.46
OUIのバージョン : 12.2.0.7.0
ログ・ファイルの場所 : /u01/app/oracle/product/19.3.0/dbhome_1/cfgtoollogs/opatc h/opatch2025-05-03_05-51-22午前_1.log
Invoking prereq "checkconflictagainstohwithdetail"
Prereq "checkConflictAgainstOHWithDetail" passed.
OPatch succeeded.
4-3. リスナーの停止
lsnrctl stop
If this is not a RAC environment, shut down all instances and listeners associated with the Oracle home that you are updating. For more information, see Oracle Database Administrator's Guide.
RAC環境であれば、ローリングによる無停止の適用が可能です。
RAC環境ではないので、リスナーとインスタンスを停止します。
[oracle@ol95db19c 37642901]$ lsnrctl stop
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 03-5月 -2025 06:09:44
Copyright (c) 1991, 2024, Oracle. All rights reserved.
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ol95db19c.dev)(PORT=1521)))に接続中
コマンドは正常に終了しました。
[oracle@ol95db19c 37642901]$ lsnrctl status
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 03-5月 -2025 06:09:47
Copyright (c) 1991, 2024, Oracle. All rights reserved.
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ol95db19c.dev)(PORT=1521)))に接続中
TNS-12541: TNS: リスナーがありません。
TNS-12560: TNS: プロトコル・アダプタ・エラー
TNS-00511: リスナーがありません。
Linux Error: 111: Connection refused
(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))に接続中
TNS-12541: TNS: リスナーがありません。
TNS-12560: TNS: プロトコル・アダプタ・エラー
TNS-00511: リスナーがありません。
Linux Error: 2: No such file or directory
4-4. インスタンスの停止
[oracle@ol95db19c 37642901]$ sqlplus / as sysdba;
SQL*Plus: Release 19.0.0.0.0 - Production on 土 5月 3 06:10:39 2025
Version 19.25.0.0.0
Copyright (c) 1982, 2024, Oracle. All rights reserved.
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.25.0.0.0
に接続されました。
SQL> shutdown immediate
データベースがクローズされました。
データベースがディスマウントされました。
ORACLEインスタンスがシャットダウンされました。
4-5. パッチ(RU)適用
opatch apply
[oracle@ol95db19c 37642901]$ opatch apply
Oracle Interim Patch Installerバージョン12.2.0.1.46
Copyright (c) 2025, Oracle Corporation. All rights reserved。
Oracleホーム : /u01/app/oracle/product/19.3.0/dbhome_1
中央インベントリ : /u01/app/oraInventory
元 : /u01/app/oracle/product/19.3.0/dbhome_1/oraInst.loc
OPatchのバージョン : 12.2.0.1.46
OUIのバージョン : 12.2.0.7.0
ログ・ファイルの場所 : /u01/app/oracle/product/19.3.0/dbhome_1/cfgtoollogs/opatch/opatch2025-05-03_06-13-33午前_1.log
Verifying environment and performing prerequisite checks...
OPatch continues with these patches: 37642901
続行しますか。[y|n]
y
User Responded with: Y
All checks passed.
ローカル・システムのこのORACLE_HOME以外で実行しているOracleインスタンスを停止してください。
(Oracleホーム = '/u01/app/oracle/product/19.3.0/dbhome_1')
ローカル・システムにパッチを適用する準備ができましたか。 [y|n]
実行結果詳細
y
User Responded with: Y
Backing up files...
個別パッチ'37642901'をOH '/u01/app/oracle/product/19.3.0/dbhome_1'に適用中
ApplySession: オプションのコンポーネント[ oracle.network.gsm, 19.0.0.0.0 ] , [ oracle.assistants.asm, 19.0.0.0.0 ] , [ oracle.crypto.rsf, 19.0.0.0.0 ] , [ oracle.pg4appc, 19.0.0.0.0 ] , [ oracle.pg4mq, 19.0.0.0.0 ] , [ oracle.oraolap.mgmt, 19.0.0.0.0 ] , [ oracle.precomp.companion, 19.0.0.0.0 ] , [ oracle.rdbms.ic, 19.0.0.0.0 ] , [ oracle.rdbms.tg4db2, 19.0.0.0.0 ] , [ oracle.sdo.companion, 19.0.0.0.0 ] , [ oracle.tfa, 19.0.0.0.0 ] , [ oracle.ons.cclient, 19.0.0.0.0 ] , [ oracle.options.olap, 19.0.0.0.0 ] , [ oracle.ons.eons.bwcompat, 19.0.0.0.0 ] , [ oracle.options.olap.api, 19.0.0.0.0 ] , [ oracle.network.cman, 19.0.0.0.0 ] , [ oracle.rdbms.tg4sybs, 19.0.0.0.0 ] , [ oracle.rdbms.tg4tera, 19.0.0.0.0 ] , [ oracle.oid.client, 19.0.0.0.0 ] , [ oracle.ldap.ztk, 19.0.0.0.0 ] , [ oracle.java.sqlj.sqljruntime, 19.0.0.0.0 ] , [ oracle.net.cman, 19.0.0.0.0 ] , [ oracle.xdk.companion, 19.0.0.0.0 ] , [ oracle.rdbms.tg4msql, 19.0.0.0.0 ] , [ oracle.rdbms.tg4ifmx, 19.0.0.0.0 ] , [ oracle.jdk, 1.8.0.191.0 ] , [ oracle.jdk, 1.8.0.391.11 ] がOracleホームに存在しないか、上位バージョンが見つかりまし た。
コンポーネントoracle.rdbms, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.util, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.assistants.acf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.assistants.deconfig, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.assistants.server, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.blaslapack, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.buildtools.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ctx, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.dbdev, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.dbjava.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.dbjava.jdbc, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.dbjava.ucp, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.duma, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.javavm.client, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.owm, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.security.osdt, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.marvel, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.network.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.odbc.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ons, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ons.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.oracore.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.perlint, 5.28.1.0.0にパッチを適用中...
コンポーネントoracle.precomp.common.core, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.precomp.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.crs, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.dbscripts, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.deconfig, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.oci, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.rsf.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.scheduler, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rhp.db, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sdo, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sdo.locator.jrf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sqlplus, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sqlplus.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sqlj.sqljruntime, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.tfa.db, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.wwg.plsql, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.xdk.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.client, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.ssl, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.nlsrtl.rsf.core, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.oraolap.dbscripts, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.mgw.common, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.install.plugins, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.rsf.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.javavm.server, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ovm, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.locator, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.xdk.parser.java, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.oraolap.api, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.nlsrtl.rsf.lbuilder, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.lbac, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ctx.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.install.common, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.network.listener, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.xdk.xquery, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.odbc, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ctx.atg, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.hs_common, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.oraolap, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.network.aso, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.nlsrtl.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.nlsrtl.rsf.core, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.nlsrtl.rsf.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.dbtoolslistener, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.rman, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.xdk, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.drdaas, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.hsodbc, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.network.client, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.dm, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sdo.locator, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.dv, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.rat, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.install.deinstalltool, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.precomp.lang, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.precomp.common, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.jdk, 1.8.0.201.0にパッチを適用中...
Patch 37642901 successfully applied.
Sub-set patch [36912597] has become inactive due to the application of a super-set patch [37642901].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/oracle/product/19.3.0/dbhome_1/cfgtoollogs/opatch/opatch2025-05-03_06-13-33午前_1.log
OPatch succeeded.
Sub-set patch [36912597] has become inactive due to the application of a super-set patch [37642901].
上位セットである 37642901(19.27)が適用され、36912597(19.25)が非活性になりました。
- 参考:上位セットを適用した時のOpatch挙動
OPatch: Behavior Changes starting in OPatch 12.2.0.1.5 and 11.2.0.3.14 releases (ドキュメントID 2161861.1)
https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=349780620535835&id=2161861.1
5. インスタンス起動
5-1. インスタンス起動
19.27に更新されたバイナリを利用して、インスタンスを起動
[oracle@ol95db19c 37642901]$ sqlplus / as sysdba;
SQL*Plus: Release 19.0.0.0.0 - Production on 土 5月 3 08:31:44 2025
Version 19.27.0.0.0
Copyright (c) 1982, 2024, Oracle. All rights reserved.
アイドル・インスタンスに接続しました。
SQL> startup
ORACLEインスタンスが起動しました。
Total System Global Area 734001472 bytes
Fixed Size 8943936 bytes
Variable Size 511705088 bytes
Database Buffers 205520896 bytes
Redo Buffers 7831552 bytes
データベースがマウントされました。
データベースがオープンされました。
5-2. リスナー起動
[oracle@ol95db19c OPatch]$ lsnrctl start
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 03-5月 -2025 09:27:40
Copyright (c) 1991, 2025, Oracle. All rights reserved.
/u01/app/oracle/product/19.3.0/dbhome_1/bin/tnslsnrを起動しています。お待ちください...
TNSLSNR for Linux: Version 19.0.0.0.0 - Production
システム・パラメータ・ファイルは/u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.oraです。
ログ・メッセージを/u01/app/oracle/diag/tnslsnr/ol95db19c/listener/alert/log.xmlに書き込みました。
リスニングしています: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ol95db19c.dev)(PORT=1521)))
リスニングしています: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ol95db19c.dev)(PORT=1521)))に接続中
リスナーのステータス
------------------------
別名 LISTENER
バージョン TNSLSNR for Linux: Version 19.0.0.0.0 - Production
開始日 03-5月 -2025 09:27:40
稼働時間 0 日 0 時間 0 分 1 秒
トレース・レベル off
セキュリティ ON: Local OS Authentication
SNMP OFF
パラメータ・ファイル /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora
ログ・ファイル /u01/app/oracle/diag/tnslsnr/ol95db19c/listener/alert/log.xml
リスニング・エンドポイントのサマリー...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ol95db19c.dev)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
リスナーはサービスをサポートしていません。
コマンドは正常に終了しました。
6. Datapatch適用
6-1 . Datapatch適用
./datapatch -verbose
コマンドにより以下のフローでデータディクショナリを更新します
※ verboseオプション:追加情報を出力
- 環境変数を利用してDBに接続
- SQLレジストリを確認し、Opatchインベントリとの差分チェック
- 必要なSQLを実行し、データディクショナリを更新
- Opatchインベントリを更新
※ログは /cfgtoollogs/sqlpatch/に出力
詳細は以下ドキュメントを参照
- Datapatch ユーザーガイド (ドキュメントID 2686990.1)
https://support.oracle.com/epmos/faces/DocumentDisplay?id=2686990.1
Datapatchはsqlplusを使用して、Oracleホームに関連付けられた単一のデータベースでパッチ内の.sqlファイルを実行し、データディクショナリを更新します。
SQLによるデータディクショナリの更新なので、インスタンスを起動して実行
RAC環境の場合、datapatchは1つのノードでのみ実行
[oracle@ol95db19c OPatch]$ ./datapatch -verbose
SQL Patching tool version 19.27.0.0.0 Production on Sat May 3 10:04:41 2025
Copyright (c) 2012, 2025, Oracle. All rights reserved.
Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_9372_2025_05_03_10_04_42/sqlpatch_invocation.log
Connecting to database...OK
Gathering database info...done
Bootstrapping registry and package to current versions...done
Determining current state...done
Current state of interim SQL patches:
No interim patches found
Current state of release update SQL patches:
Binary registry:
19.27.0.0.0 Release_Update 250406131139: Installed
SQL registry:
Applied 19.25.0.0.0 Release_Update 241010184253 successfully on 25-01-28 02:52:08.868153
Adding patches to installation queue and performing prereq checks...done
Installation queue:
No interim patches need to be rolled back
Patch 37642901 (Database Release Update : 19.27.0.0.250415 (37642901)):
Apply from 19.25.0.0.0 Release_Update 241010184253 to 19.27.0.0.0 Release_Update 250406131139
No interim patches need to be applied
Installing patches...
Patch installation complete. Total patches installed: 1
Validating logfiles...done
Patch 37642901 apply: SUCCESS
logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/37642901/27123174/37642901_apply_ORCL_2025May03_10_15_58.log (no errors)
SQL Patching tool complete on Sat May 3 10:33:41 2025
7. 適用確認
[oracle@ol95db19c ~]$ sqlplus / as sysdba;
SQL*Plus: Release 19.0.0.0.0 - Production on 土 5月 3 12:37:15 2025
Version 19.27.0.0.0
Copyright (c) 1982, 2024, Oracle. All rights reserved.
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.27.0.0.0
に接続されました。
[oracle@ol95db19c ~]$ opatch lspatches
37642901;Database Release Update : 19.27.0.0.250415 (37642901)
29585399;OCW RELEASE UPDATE 19.3.0.0.0 (29585399)
最新RU(19.27)が適用されました!
参考
- Oracle Databaseパッチ・メンテナンスの概要
https://docs.oracle.com/cd/E82638_01/dbptc/index.html#GUID-A831852D-28AC-4C82-A5D4-5051C14BF4D2 - TechNight#66 - プロアクティブ・パッチの適用と新たなパッチ提供形態
https://speakerdeck.com/oracle4engineer/technight-number-66-puroakuteibupatutinoshi-yong-toxin-tanapatutiti-gong-xing-tai - Oracle Database 19cに最新パッチを適用してみた #初心者 - Qiita
https://qiita.com/shi6maSencho/items/9e672e4801436eca7663
Appendex1. ロールバック
適用するのと同様の手順でロールバック可能です。
まず、適用されているパッチを確認
opatch lspatches
[oracle@ol95db19c dbhome_1]$ opatch lspatches
37642901;Database Release Update : 19.27.0.0.250415 (37642901)
29585399;OCW RELEASE UPDATE 19.3.0.0.0 (29585399)
OPatch succeeded.
ロールバックするパッチ番号を指定してロールバックコマンドを実行
(リスナーとインスタンスは停止)
opatch rollback -id 37642901
実行結果詳細
[oracle@ol95db19c dbhome_1]$
Oracle Interim Patch Installerバージョン12.2.0.1.46
Copyright (c) 2025, Oracle Corporation. All rights reserved。
Oracleホーム : /u01/app/oracle/product/19.3.0/dbhome_1
中央インベントリ : /u01/app/oraInventory
元 : /u01/app/oracle/product/19.3.0/dbhome_1/oraInst.loc
OPatchのバージョン : 12.2.0.1.46
OUIのバージョン : 12.2.0.7.0
ログ・ファイルの場所 : /u01/app/oracle/product/19.3.0/dbhome_1/cfgtoollogs/opatch/opatch2025-05-04_03-16-16午前_1.log
Patches will be rolled back in the following order:
37642901
The following patch(es) will be rolled back: 37642901
ローカル・システムのこのORACLE_HOME以外で実行しているOracleインスタンスを停止し てください。
(Oracleホーム = '/u01/app/oracle/product/19.3.0/dbhome_1')
ローカル・システムにパッチを適用する準備ができましたか。 [y|n]
y
User Responded with: Y
Rolling back patch 37642901...
RollbackSessionは個別パッチ'37642901'をOH '/u01/app/oracle/product/19.3.0/dbhome_1'からロールバック中
コンポーネントoracle.rdbms, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.util, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.assistants.acf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.assistants.deconfig, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.assistants.server, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.blaslapack, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.buildtools.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ctx, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.dbdev, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.dbjava.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.dbjava.jdbc, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.dbjava.ucp, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.duma, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.javavm.client, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.owm, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.security.osdt, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.marvel, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.network.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.odbc.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ons, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ons.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.oracore.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.perlint, 5.28.1.0.0にパッチを適用中...
コンポーネントoracle.precomp.common.core, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.precomp.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.crs, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.dbscripts, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.deconfig, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.oci, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.rsf.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.scheduler, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rhp.db, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sdo, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sdo.locator.jrf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sqlplus, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sqlplus.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sqlj.sqljruntime, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.tfa.db, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.wwg.plsql, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.xdk.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.client, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.ssl, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.nlsrtl.rsf.core, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.oraolap.dbscripts, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.mgw.common, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.install.plugins, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ldap.rsf.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.javavm.server, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ovm, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.locator, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.xdk.parser.java, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.oraolap.api, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.nlsrtl.rsf.lbuilder, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.lbac, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ctx.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.install.common, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.network.listener, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.xdk.xquery, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.odbc, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.ctx.atg, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.hs_common, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.oraolap, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.network.aso, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.nlsrtl.rsf, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.nlsrtl.rsf.core, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.nlsrtl.rsf.ic, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.dbtoolslistener, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.rman, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.xdk, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.drdaas, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.hsodbc, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.network.client, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.dm, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.sdo.locator, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.dv, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.rdbms.rat, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.install.deinstalltool, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.precomp.lang, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.precomp.common, 19.0.0.0.0にパッチを適用中...
コンポーネントoracle.jdk, 1.8.0.201.0にパッチを適用中...
RollbackSessionはインベントリから個別パッチ'37642901'を削除しています
Inactive sub-set patch [36912597] has become active due to the rolling back of a super-set patch [37642901].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/oracle/product/19.3.0/dbhome_1/cfgtoollogs/opatch/opatch2025-05-04_03-16-16午前_1.log
OPatch succeeded.
適用前の状態(RU 19.25)に戻ったことを確認
opatch lspatches
[oracle@ol95db19c dbhome_1]$ opatch lspatches
36912597;Database Release Update : 19.25.0.0.241015 (36912597)
29585399;OCW RELEASE UPDATE 19.3.0.0.0 (29585399)
OPatch succeeded.
インスタンスを起動して、データパッチを実行
./datapatch -verbose
バイナリに合わせて、データディクショナリがロールバックされます。
実行結果詳細
[oracle@ol95db19c OPatch]$ ./datapatch -verbose
SQL Patching tool version 19.25.0.0.0 Production on Sun May 4 07:55:11 2025
Copyright (c) 2012, 2024, Oracle. All rights reserved.
Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_18855_2025_05_04_07_55_12/sqlpatch_invocation.log
Connecting to database...OK
Gathering database info...done
Bootstrapping registry and package to current versions...done
Determining current state...done
Current state of interim SQL patches:
No interim patches found
Current state of release update SQL patches:
Binary registry:
19.25.0.0.0 Release_Update 241010184253: Installed
SQL registry:
Applied 19.27.0.0.0 Release_Update 250406131139 successfully on 25-05-03 10:32:10.051141
Adding patches to installation queue and performing prereq checks...done
Installation queue:
No interim patches need to be rolled back
Patch 37642901 (Database Release Update : 19.27.0.0.250415 (37642901)):
Rollback from 19.27.0.0.0 Release_Update 250406131139 to 19.25.0.0.0 Release_Update 241010184253
No interim patches need to be applied
Installing patches...
Patch installation complete. Total patches installed: 1
Validating logfiles...done
Patch 37642901 rollback: SUCCESS
logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/37642901/27123174/37642901_rollback_ORCL_2025May04_07_57_08.log (no errors)
SQL Patching tool complete on Sun May 4 08:05:48 2025
[oracle@ol95db19c OPatch]$ ./datapatch -verbose
SQL Patching tool version 19.25.0.0.0 Production on Sun May 4 07:55:11 2025
Copyright (c) 2012, 2024, Oracle. All rights reserved.
Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_18855_2025_05_04_07_55_12/sqlpatch_invocation.log
Connecting to database...OK
Gathering database info...done
Bootstrapping registry and package to current versions...done
Determining current state...done
Current state of interim SQL patches:
No interim patches found
Current state of release update SQL patches:
Binary registry:
19.25.0.0.0 Release_Update 241010184253: Installed
SQL registry:
Applied 19.27.0.0.0 Release_Update 250406131139 successfully on 25-05-03 10:32:10.051141
Adding patches to installation queue and performing prereq checks...done
Installation queue:
No interim patches need to be rolled back
Patch 37642901 (Database Release Update : 19.27.0.0.250415 (37642901)):
Rollback from 19.27.0.0.0 Release_Update 250406131139 to 19.25.0.0.0 Release_Update 241010184253
No interim patches need to be applied
Installing patches...
Patch installation complete. Total patches installed: 1
Validating logfiles...done
Patch 37642901 rollback: SUCCESS
logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/37642901/27123174/37642901_rollback_ORCL_2025May04_07_57_08.log (no errors)
SQL Patching tool complete on Sun May 4 08:05:48 2025
Appendix 2. パッチ適用エラー(起動中の実行)
パッチ適用時のエラー例です。
停止せずに適用を実行するとエラーになります(エラーコード73)。
[oracle@ol95db19c dbhome_1]$ opatch rollback -id 37642901
Oracle Interim Patch Installerバージョン12.2.0.1.46
Copyright (c) 2025, Oracle Corporation. All rights reserved。
Oracleホーム : /u01/app/oracle/product/19.3.0/dbhome_1
中央インベントリ : /u01/app/oraInventory
元 : /u01/app/oracle/product/19.3.0/dbhome_1/oraInst.loc
OPatchのバージョン : 12.2.0.1.46
OUIのバージョン : 12.2.0.7.0
ログ・ファイルの場所 : /u01/app/oracle/product/19.3.0/dbhome_1/cfgtoollogs/opatch/opatch2025-05-04_03-02-44午前_1.log
Patches will be rolled back in the following order:
37642901
Prerequisite check "CheckActiveFilesAndExecutables" failed.
The details are:
Following active files/executables/libs are used by ORACLE_HOME :/u01/app/oracle/product/19.3.0/dbhome_1
/u01/app/oracle/product/19.3.0/dbhome_1/bin/oracle
/u01/app/oracle/product/19.3.0/dbhome_1/lib/libclntsh.so.19.1
/u01/app/oracle/product/19.3.0/dbhome_1/lib/libasmclntsh19.so
/u01/app/oracle/product/19.3.0/dbhome_1/bin/tnslsnr
UtilSessionが失敗しました: Prerequisite check "CheckActiveFilesAndExecutables" failed.
Log file location: /u01/app/oracle/product/19.3.0/dbhome_1/cfgtoollogs/opatch/opatch2025-05-04_03-02-44午前_1.log
OPatch failed with error code 73
Appendex3. 整合性確認(サニティチェック)
(オプション)整合性確認の実行例
[oracle@ol95db19c OPatch]$ ./datapatch -sanity_checks
Wide character in print at /u01/app/oracle/product/19.3.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.p m line 483.
SQL Patching sanity checks version 19.27.0.0.0 on 2025年05月03日 08時33分51秒
Wide character in print at /u01/app/oracle/product/19.3.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.p m line 492.
Wide character in print at /u01/app/oracle/product/19.3.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.p m line 500.
Copyright (c) 2021, 2025, Oracle. All rights reserved.
Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20250503_083351_847 0/sanity_checks_20250503_083351_8470.log
Running checks
JSON report generated in /u01/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20250503_083351_8470/sql patch_sanity_checks_summary.json file
Checks completed. Printing report:
Check: Database component status - OK
Check: PDB Violations - OK
Check: Invalid System Objects - OK
Check: Tablespace Status - OK
Check: Backup jobs - OK
Check: Temp file exists - OK
Check: Temp file online - OK
Check: Data Pump running - OK
Check: Container status - OK
Check: Oracle Database Keystore - OK
Check: Dictionary statistics gathering - OK
Check: Scheduled Jobs - OK
Check: GoldenGate triggers - OK
Check: Logminer DDL triggers - OK
Check: Check sys public grants - OK
Check: Statistics gathering running - OK
Check: Optim dictionary upgrade parameter - OK
Check: Symlinks on oracle home path - OK
Check: Central Inventory - OK
Check: Queryable Inventory dba directories - OK
Check: Queryable Inventory locks - OK
Check: Queryable Inventory package - OK
Check: Queryable Inventory external table - OK
Check: Imperva processes - OK
Check: Guardium processes - OK
Check: Locale - OK
Wide character in print at /u01/app/oracle/product/19.3.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.p m line 483.
SQL Patching sanity checks completed on 2025年05月03日 08時38分02秒
Wide character in print at /u01/app/oracle/product/19.3.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.p m line 492.
Wide character in print at /u01/app/oracle/product/19.3.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.p m line 500.
※ Wide character in print at の警告が出るのは Perlの問題
- 参考
Appendex4. 競合チェック
My Oracle Support上で競合チェックが可能
(今回は個別パッチが無いため競合なし)