停止時間を発生させないOracle Database 19cへのパッチ適用

この手順では、データベースを停止させずに、Oracle Database 19cに最新のパッチを適用する方法について説明します。

始める前に

最新のパッチ・レベルにパッチ適用するOracle Database db19cがあることを確認してください。

イメージDB19c_PSUに基づく作業用コピーdb19c_psuに、最新のパッチが含まれていて、利用可能であることを確認してください。

手順

フリート・パッチ適用およびプロビジョニング・サーバーから、データベース上のソースと宛先に応じて、次のいずれかのコマンドを実行します。

  1. フリート・パッチ適用およびプロビジョニングによって管理されるOracle Databaseホームにパッチを適用する場合で、ソースおよび宛先データベースの作業用コピーが存在する場合は、次のコマンドを実行します。
    rhpctl move database -sourcewc db19c -patchedwc db19c_psu

    db19cは、パッチが適用されるデータベースのソース作業用コピーです。

    db19c_psuは、パッチが適用されたOracle Databaseソフトウェアの作業用コピーです(イメージDB19c_PSUに基づく)。

  2. 管理対象外のOracle Databaseホームにパッチを適用するには、次のコマンドを実行します(Oracleホームはフリート・パッチ適用およびプロビジョニングによって管理されないため、ソース作業用コピーは存在しません)。
    rhpctl move database -sourcehome /u01/app/orabase/product/19.0.0/dbhome_1
     -patchedwc db19c_psu -targetnode node1

    targetnodeでは、アップグレード対象のデータベースが実行されているノードを指定します(ソースOracle Databaseが19cクラスタ上にあるため)。

    /u01/app/orabase/product/19.0.0/dbhome_1はアップグレードされるデータベースのパスです

    db19c_psuは、パッチが適用されたOracle Databaseソフトウェアの作業用コピーです(イメージDB19c_PSUに基づく)。

    リリース19cのすべてのデータベースのパッチ適用を同じパッチ・レベルへと標準化するために、保存されたゴールド・イメージを使用します。
  3. なんらかの理由で、適用されたパッチを管理対象のOracle Databaseホームにロールバックする必要がある場合は、次のコマンドを実行します。
    rhpctl move database -sourcewc db19c_psu 
    -patchedwc db19c -ignorewcpatches

    db19cは、ロール・バック先となるパッチが適用されていないデータベースの作業用コピーです。

    db19c_psuは、パッチが適用されたOracle Databaseソフトウェアの作業用コピーです(イメージDB19c_PSUに基づく)。

すべてのOracle Databaseについて、move databaseコマンドでは次の追加オプションも指定できます。

  • -keepplacement: 管理者によって管理されるOracle RACデータベース(Oracle RAC One Nodeデータベースではありません)のために、フリート・パッチ適用およびプロビジョニングは移動後もサービスを同じノード上に保持します。

  • -disconnect: サービスを停止または再配置する前にすべてのセッションを切断します。

  • -drain_timeout: 計画的なメンテナンス操作のためのリソース排出が完了するまでの許容時間を秒数で指定します。ドレイン期間中は、現在のすべてのクライアント要求は処理されますが、新しい要求は受け入れません。このオプションは、Oracle Database 12cリリース2 (12.2)以降についてのみ使用できます。

  • -stopoption: データベースを停止します。

  • -nodatapatch: 移動するデータベースに対してdatapatchが実行されていないことを確認します。

ビデオを見る