Oracle 26ai の RU の定期的な更新は、日常の運用とメンテナンスの一部です。著者は、同様のニーズを持つ読者の参考のために、23.26.2 から 23.26.4 にアップグレードする手順を記録しました。
01 |パッチを見つけてダウンロードする
ドキュメント 888.1 を通じて、必要な RU をすぐに見つけることができます。
これは、レガシー MOS の MOS ドキュメント ID: 888.1 でした。

筆者は当時 10 月にリリースされた最新の RU を選択しました。
Patch 40007731: DATABASE RELEASE UPDATE 23.26.4.0.0
通常、パッチ適用に使用されるOPatchツールはバージョンと一致する必要があるため、同じく10月にリリースされる最新のOPatchを同時にダウンロードします。

02 | OPatchのアップグレード
まず現在のバージョンを確認してください。
[oracle@alfred-db 23.26.4]$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.51
OPatch succeeded.
置き換える前に、メンテナンス期間中であること、他のセッションでOPatchを使用していないこと、ORACLE_HOMEがバックアップされていることを確認してください。新しいバージョンに異常がある場合は、OPatchディレクトリを削除し、OPatch_bakを使用して復元できます。古いディレクトリをバックアップし、新しいバージョンを抽出します。
mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch_bak
[oracle@alfred-db 23.26.4]$ unzip p6880880_230000_Linux-x86-64.zip -d $ORACLE_HOME/
[oracle@alfred-db 23.26.4]$ $ORACLE_HOME/OPatch/opatch version
OPatch Version: 12.2.0.1.55
OPatch succeeded.
03 | RUパッチを適用する
Readme ファイルの操作によると、主な手順は次のとおりです。
unzip p40007731_230000_Linux-x86-64.zip
cd 40007731
$ORACLE_HOME/OPatch/opatch prereq CheckMinimumOPatchVersion -ph ./
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/media/23.26.4/40007731
メンテナンス期間内に、実行する前に、企業に通知されていることと、データベースに利用可能なバックアップがあることを確認します。即時シャットダウンが長時間完了していない場合は、まずアクティブなセッションを確認してから、強制的にシャットダウンするかどうかを決定します。リスニングとデータベースを閉じます。
lsnrctl stop
sqlplus / as sysdba
SQL> shutdown immediate
パッチを適用します。
$ORACLE_HOME/OPatch/opatch apply
主な成功指標は次のとおりです。
---
Patch 40007731 successfully applied.
Sub-set patch [39093711] has become inactive due to the application of a super-set patch [40007731].
Please refer to Doc ID 2161861.1 for any possible further required actions.
***** There are 2 inactive RU patches in chain 1
***** 1 inactive patches will be deleted
Log file location: /opt/oracle/product/26ai/dbhome_1/cfgtoollogs/opatch/opatch2026-11-09_17-02-47PM_1.log
OPatch succeeded.
04 |データパッチの実行
Readme には、パッチを適用した後、データベースを起動して datapatch を実行する必要があると記載されています。
$ sqlplus /nolog
SQL> Connect / as sysdba
SQL> startup
SQL> alter pluggable database all open;
SQL> quit
$ cd $ORACLE_HOME/OPatch
$ ./datapatch -sanity_checks # 可选,用于执行前检查
$ ./datapatch -verbose
実行する前に、opatch lspatches を使用して、パッチが適用されていることを確認できます。データパッチには時間がかかる場合があります。しばらくお待ちください。エラーが発生した場合は、まず sqlpatch ログを確認して対処する必要があります。外部サービスを提供するために直接監視を開始しないでください。最終的な成功の識別を確認します。
Installing patches...
Patch installation complete. Total patches installed: 3
Validating logfiles...done
Patch 40007731 apply (pdb CDB$ROOT): SUCCESS
Patch 40007731 apply (pdb PDB$SEED): SUCCESS
Patch 40007731 apply (pdb ORCLPDB1): SUCCESS
SQL Patching tool complete on Mon Nov 9 17:20:06 2026
05 |クロージングと検証
無効な可能性のあるオブジェクトを再コンパイルします。
$ $ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -n 1 -e -b utlrp -d $ORACLE_HOME/rdbms/admin utlrp.sql
この時点で、サービスの監視と提供を開始できます。著者は次のようなエピソードに遭遇しました。sqlnet.ora ファイルが何者かによって変更されており、形式に問題がある (余分な改行がある) ため、監視を開始できません。形式を修正すると、正常になります。
$ lsnrctl start
その後、データベースのバージョン照会、コンポーネントの状態の確認、アプリケーションの接続テストを実施し、サービスが正常であることを確認します。
私に従ってAIと一緒に成長してください~