Oracle Exadata Database Service on Cloud@Customerシステムのトラブルシューティング

これらのトピックでは、発生する可能性がある一般的な問題とその対処方法について説明します。

Oracle Exadata Database Service on Cloud@Customerシステムでのパッチ適用の失敗

パッチ適用操作は、様々な理由で失敗することがあります。通常、データベース・ノードが停止している、ファイル・システムの領域が不足している、または仮想マシンがオブジェクト・ストアにアクセスできないといった理由から、操作は失敗します。

問題の特定

コンソールで、Oracle Exadata Database Service on Cloud@Customerシステムまたは個々のデータベースのパッチ履歴を表示して、失敗したパッチ適用操作を識別できます。

正常に適用されなかったパッチには「失敗」のステータスが表示され、失敗の原因となったエラーの簡単な説明が示されます。エラー・メッセージに解決策を示す十分な情報が含まれていない場合は、データベースCLIおよびログ・ファイルを使用して、さらに多くのデータを収集できます。その後、解決策についてこのトピックの該当する項を参照してください。

トラブルシューティングおよび診断

Oracle Exadata Database Service on Cloud@Customerコンポーネントのパッチ適用プロセス中にエラーが発生しました。

データベース・サーバーVMの問題

データベース・サーバーVMにおける次の1つ以上の状況が原因で、パッチ適用操作に失敗することがあります。

データベース・サーバーVMの接続の問題

クラウド・ツールは、特定のVMクラスタの仮想マシン間の適切なネットワークおよび接続構成に依存します。構成が正しく設定されていない場合、ノード間処理を必要とするすべての操作で障害が発生する可能性があります。たとえば、特定のパッチの適用に必要なファイルをダウンロードできないことがあります。

この場合、次のアクションを実行できます:

  • 関連する仮想マシン・アドレスをVMクラスタ内で解決できるように、DNS構成が正しいことを確認します。
  • 追加のサポートが必要な場合の項の説明に従って関連するクラウド・ツールのログを参照し、Oracleサポートに連絡してください。
Oracle Grid Infrastructureの問題

Oracle Grid Infrastructureにおける次の1つ以上の状況が原因で、パッチ適用操作に失敗することがあります。

Oracle Grid Infrastructureが停止している

Oracle Clusterwareを使用すると、複数のサーバーが相互に通信することにより、1つの集合単位として機能することができます。パッチ適用操作を完了するには、VMクラスタでクラスタ・ソフトウェア・プログラムが稼働している必要があります。場合によっては、Oracle Clusterwareを再起動してパッチ適用の失敗を解決する必要があります。

その場合は、次のようにOracle Grid Infrastructureのステータスを確認します:
./crsctl check cluster
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
Oracle Grid Infrastructureが停止している場合は、次のコマンドを実行して再起動します:
crsctl start cluster -all
crsctl check cluster
Oracle Databaseの問題

データベースの状態が適切ではない場合、パッチ適用に失敗することがあります。

Oracle Databaseが停止している

クラスタ全体でパッチ適用操作を正常に完了するには、データベースがアクティブで、すべてのアクティブ・ノードで実行されている必要があります。

次のコマンドを使用してデータベースの状態をチェックし、データベースが不適切な状態になる可能性のある問題が解決されていることを確認します:
srvctl status database -d db_unique_name -verbose

データベースのインスタンス・ステータスを含むメッセージが返されます。パッチ適用操作が成功するためには、インスタンス・ステータスがオープンである必要があります。

データベースが実行されていない場合は、次のコマンドを使用して起動します:
srvctl start database -d db_unique_name -o open

追加のサポートが必要な場合

このトピックの情報を使用して問題を解決できなかった場合は、次の手順に従って、関連するデータベースおよび診断情報を収集します。この情報を収集したら、Oracleサポートに連絡してください。

関連トピック

クラウド・ツールのログの収集

関連するログ・ファイルを使用して、特定の問題の詳細な調査および解決のためにOracleサポートを支援できます。

DBAASCLIログ

/var/opt/oracle/log/dbaascli
  • dbaascli.log

Oracle診断情報の収集

関連するOracle診断情報およびログを収集するには、dbaascli diag collectコマンドを実行します。

このユーティリティの使用方法の詳細は、DBAASツール: dbaascliを使用したクラウド・ツール・ログの収集およびクラウド・ツールのヘルス・チェックの実行を参照してください。

データベース接続のドレイン中にVMオペレーティング・システムの更新がハングする

説明: これは断続的に発生する問題です。19c Grid Infrastructureおよび実行中のデータベースがある仮想マシンのオペレーティング・システムの更新中に、dbnodeupdate.shRHPhelperによる接続のドレインを待機しますが、これは既知のバグ"DBNODEUPDATE.SH HANGS IN RHPHELPER TO DRAIN SESSIONS AND SHUTDOWN INSTANCE"のために進行しません。

兆候: このバグによる結果には、2つの可能性があります:
  1. VMオペレーティング・システムの更新がrhphelperでハングします
    • 自動化がハングします
    • データベース接続のドレインは一部が発生するかまったく発生せず、データベース・インスタンスの一部または全部が実行されたままです。
  2. rhphelperがクラッシュしたため、VMオペレーティング・システムの更新ではデータベース接続のドレインが発生しません
    • 自動化はハングしません
    • データベース接続のドレインは一部が完了するか、まったく完了しません

/var/log/cellos/dbnodeupdate.trcでは、これが最終行に表示されます:

(ACTION:) Executing RHPhelper to drain sessions and shutdown instances. 
(trace:/u01/app/grid/crsdata/scaqak04dv0201/rhp//executeRHPDrain.150721125206.trc)
処置:
  1. Grid Infrastructureバージョンを19.11以上にアップグレードします。

    (または)

    更新前にrhphelperを無効にし、更新後に再度有効にします。

    更新の開始前に無効にするには:
    /u01/app/19.0.0.0/grid/srvm/admin/rhphelper /u01/app/19.0.0.0/grid 19.10.0.0.0 -setDrainAttributes ENABLE=false
    更新の完了後に有効にするには:
    /u01/app/19.0.0.0/grid/srvm/admin/rhphelper /u01/app/19.0.0.0/grid oracle-home-current-version -setDrainAttributes ENABLE=true

    rhphelperを無効にすると、オペレーティング・システムが更新されるまで、データベース・サービスおよびインスタンスがノード上で停止される前にデータベース接続のドレインは発生しなくなります。

  2. RHPhelperの無効化に失敗し、アップグレードが進行せずにハングした場合は、サービスのドレインに時間がかかっていることがわかります:
    1. 次のようなパラグラフを含む/var/log/cellos/dbnodeupdate.trcトレース・ファイルを調べます:
      (ACTION:) Executing RHPhelper to drain sessions and shutdown instances. 
      (trace: /u01/app/grid/crsdata/<nodename>/rhp//executeRHPDrain.150721125206.trc)
    2. /var/log/cellos/dbnodeupdate.trcトレース・ファイルを開きます。
      rhphelperが失敗した場合、トレース・ファイルには次のようなメッセージが含まれます:
      "Failed execution of RHPhelper"
      rhphelperがハングした場合、トレース・ファイルには次のようなメッセージが含まれます:
      (ACTION:) Executing RHPhelper to drain sessions and shutdown instances.
    3. オペレーティング・システム・レベルで実行されているrhphelperプロセスを識別し、強制終了します。

      名前に文字列“rhphelper”を持つコマンドには2つあり、Bashシェルと、(実際はrhphelperを実行している)基礎となるJavaプログラムです。

      rhphelperrootとして実行されるため、root (opcからsudo)として強制終了する必要があります。

      例:
      [opc@<HOST> ~] pgrep –lf rhphelper
      191032 rhphelper
      191038 java
      
      [opc@<HOST> ~] sudo kill –KILL 191032 191038
    4. dbnodeupdate.trcファイルが移動し、ノードのGrid Infrastructureスタックが停止していることを確認します。

    RHPhelperの詳細は、Using RHPhelper to Minimize Downtime During Planned Maintenance on Exadata (Doc ID 2385790.1)を参照してください。

VMクラスタへのVMの追加が失敗する

説明: VMクラスタにVMを追加するときに、次の問題が発生する可能性があります:
[FATAL] [INS-32156] Installer has detected that there are non-readable files in oracle home.
CAUSE: Following files are non-readable, due to insufficient permission oracle.ahf/data/scaqak03dv0104/diag/tfa/tfactl/user_root/tfa_client.trc
ACTION: Ensure the above files are readable by grid.

原因: インストーラによって、Autonomous Health Framework (AHF)で作成された読取り不可能なトレース・ファイルoracle.ahf/data/scaqak03dv0104/diag/tfa/tfactl/user_root/tfa_client.trcがOracleホームに検出され、クラスタVMの追加が失敗します。

rootとして実行されたAHFは、rootの所有権でtrcファイルを作成しているため、gridユーザーは読み取ることができません。

処置: VMクラスタにVMを追加する前に、gridユーザーがAHFトレース・ファイルを読取り可能であることを確認してください。権限の問題を修正するには、既存のすべてのVMクラスタのVMでrootとして次のコマンドを実行します:
chown grid:oinstall /u01/app/19.0.0.0/grid/srvm/admin/logging.properties
chown -R grid:oinstall /u01/app/19.0.0.0/grid/oracle.ahf*
chown -R grid:oinstall /u01/app/grid/oracle.ahf*

Data Guard対応データベースのノードリストが更新されない

説明: VMクラスタへのVMの追加は正常に完了しますが、Data Guard対応データベースの場合、新しいVMが/var/opt/oracle/creg/<db>.iniファイルのノードリストに追加されません。

原因: Data Guard対応データベースは、新しく追加されたVMに拡張されません。したがって、データベース・インスタンスが新しいVMで構成されていないため、<db>.iniファイルも更新されません。

処置: インスタンスをプライマリ・データベースとスタンバイ・データベースおよび新しいVM(非Data Guard)に追加し、Data Guard環境からインスタンスを削除するには、My Oracle Supportノート2811352.1を参照してください。

CPUオフライン・スケーリングが失敗する

説明: CPUオフライン・スケーリングが次のエラーで失敗します:
** CPU Scale Update **An error occurred during module execution. Please refer to the log file for more information

原因: VMクラスタをプロビジョニングした後、Database as a Service (DBaaS)によって自動的に生成される/var/opt/oracle/cprops/cprops.iniファイルが、common_dcs_agent_bindHostおよびcommon_dcs_agent_portパラメータで更新されず、これによりCPUオフライン・スケーリングが失敗します。

処置: rootユーザーとして、/var/opt/oracle/cprops/cprops.iniファイルに次のエントリを手動で追加します。
common_dcs_agent_bindHost=<IP_Address>
common_dcs_agent_port=7070
ノート

common_dcs_agent_port値は、常に7070です。
次のコマンドを実行して、IPアドレスを取得します:
netstat -tunlp | grep 7070
例:
netstat -tunlp | grep 7070
tcp 0 0 <IP address 1>:7070 0.0.0.0:* LISTEN 42092/java
tcp 0 0 <IP address 2>:7070 0.0.0.0:* LISTEN 42092/java

common_dcs_agent_bindHostパラメータには、2つのIPアドレス(<IP address 1>または<IP address 2>)のいずれかを指定できます。

Oracle Database 11g Oracle Data Guard設定でのスイッチオーバー後にスタンバイ・データベースの再起動に失敗する

説明: スイッチオーバーの実行後、新しいスタンバイ(古いプライマリ)データベースが停止したままになり、再起動に失敗します。

処置: スイッチオーバーの実行後、次を実行します:

  1. srvctl start database -db <standby dbname>コマンドを使用してスタンバイ・データベースを再起動します。
  2. すべてのプライマリおよびスタンバイ・クラスタ・ノードでgridユーザーとしてリスナーをリロードします。
    • 高可用性を使用してリスナーをリロードするには、パッチ25075940をダウンロードしてGridホームに適用し、lsnrctl reload -with_haを実行します。
    • リスナーをリロードするには、lsrnctl reloadを実行します。

リスナーのリロード後、lsnrctl statusコマンドを使用して、<dbname>_DGMGRLサービスがリスナーにロードされていることを確認します。

パッチ25075940をダウンロードするには

  1. My Oracle Supportにログインします。
  2. 「パッチと更新版」をクリックします。
  3. 「番号/名前またはバグ番号(簡易)」ドロップダウン・リストから「バグ番号」を選択します。
  4. バグ番号34741066を入力し、「検索」をクリックします。
  5. 検索結果から、最新のパッチの名前をクリックします。

    パッチ34741066: LSNRCTL RELOAD -WITH_HA FAILED TO READ THE STATIC ENTRY IN LISTENER.ORAページにリダイレクトされます。

  6. 「ダウンロード」をクリックします。

ディザスタ・リカバリ・ネットワークでカスタムSCANリスナー・ポートをData Guardとともに使用すると、Data Guardアソシエーションの検証が失敗します

説明:クライアント・ネットワークとディザスタ・リカバリ・ネットワーク(DRネットワーク)のSCANリスナー・ポートが異なる場合、データ・ガード・アソシエーションの作成の検証フェーズ中にData Guard (DG)構成が失敗します。

処置:すべてのネットワークで同じSCANリスナー・ポート(またはデフォルト・ポート)を使用してください。クラスタの構成後にリスナー・ポートを修正するには、GI home/bin/srvctl modify listener -listener listener_name -endpoints endpointsコマンドを実行します。詳細は、Oracle Real Application Clusters管理およびデプロイメント・ガイドsrvctl modify listenerを参照してください。

新しいDBホームへのデータベースの移動後にPDBの作成が失敗する(23ai)

説明:データベースを別のDBホームに再配置した後、新しいプラガブル・データベース(PDB)の作成に失敗します。PDBサービスの起動に失敗し、次のエラーが発生します。
[FATAL] [DBAAS-60022] Command '/u02/app/oracle/product/23.0.0.0/dbhome_3/bin/srvctl 'start' 'service' '-db' 'db23ano' '-service' 'db23ano_PDBJULY242.paas.oracle.com'' has failed on nodes [localnode].

処置: Grid Infrastructureのバージョンが23.4.0.24.05の場合は、バージョン23.5.0.24.07にアップグレードしてこの問題を解決してください。

複数のPDBがパラレルに作成される場合のPDB作成の断続的な失敗

説明:複数のPDBがパラレルに作成されている場合、PDBのサブセットに対するPDBの作成が失敗することがあります。

原因: PDBの作成で、次のエラーが断続的に検出される可能性があります。
ORA-03113: end-of-file on communication channel

処置:失敗したPDBの作成を再試行してください。