ヘッダーをスキップ
Oracle® OPatchユーザーズ・ガイド
リリース12.1 for Windows and UNIX
E49737-05
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

6 OPatchautoのトラブルシューティング

この章では、使用中に発生する可能性のある一般的なOPatchautoの問題について説明します。

この章の内容は次のとおりです。

6.1 OPatchautoトラブルシューティング・アーキテクチャ

OPatchautoは、パッチ適用プロセスを十分に自動化するために、様々なツール/ユーティリティにアクセスし、様々なパッチ適用フェーズを実行します。主なツール/ユーティリティは次の4つです。

  • OPatch - GI/RACホームにパッチを適用します。

  • rootcrs - パッチを適用可能にするためのファイルのロック解除およびGIスタックの起動と停止を行うことにより、GIホーム・アクセスを制御します。

  • patchgen - パッチ・レベルを記録します。

  • datapatch - データベース・インスタンスにSQL変更を適用します。

これらのツール/ユーティリティはパッチ適用プロセス中にアクセスされます。このため、OPatchautoのトラブルシューティングには、個別のツールに関する問題の診断が含まれています。

6.2 OPatchauto (ユースケース)

OPatchautoを使用する際には、解決策を続行する方法が明確ではない問題が発生する場合があります。次のユースケースでは、このような問題が発生する可能性のある一般的なパッチ適用シナリオおよび問題を解決するために使用できる一般的な手順を示します。

6.2.1 OPatchの失敗

詳細は、第5章「OPatchのトラブルシューティング」を参照してください。

6.2.2 Rootcrs.pl

rootcrs.plスクリプトは、クラスタ上にGrid Infrastructureスタックを構成するために必要な処理を実行します。OPatchautoセッション時には、rootcrs.plスクリプトが原因のエラーが発生する場合があります。

6.2.2.1 Rootcrs.pl -Prepatch

OPatchautoが発行するコマンド: $GRID_HOME/crs/rootcrs.pl -prepatch

rootcrs.plが失敗した場合、次の例に示すように、エラー・コードとそれに関連するメッセージが生成されます。

CRS-1159: The cluster cannot be set to rolling patch mode because Grid Infrastructure is not active on at least one remote node.

メッセージが明確ではない場合に追加のヘルプを取得するには、OERRユーティリティを実行して、原因と推奨アクションに関する情報を取得します。

OERRの実行

特定のエラー・コードに対してOERRを実行すると、該当するエラー・コードの原因とアクションの両方が生成されます。

例6-1 CRSエラー

$GRID_HOME/bin/oerr crs 1159

Cause: The cluster could not be set to rolling patch mode because Grid Infrastructure was not active on any of the remote nodes.

Action: Start Grid Infrastructure on at least one remote node and retry the 'crsctl start rollingpatch' command, or retry patching using the non-rolling option.

例6-2 CLSRSCエラー

CLSRSC-400: A system reboot is required to continue installing.

oerr clsrsc 400

Cause: The installation of new drivers requires a node reboot to continue the install.

Action: Reboot the node and rerun the install or patch configuration step.

次の表に、パッチ適用セッション時に発生する可能性のある一般的なエラー・コードを示します。包括的なリストについては、Oracle® Databaseエラー・メッセージのマニュアルを参照してください。

表6-1 CRSエラー・コード

エラー・コード コンソール・メッセージ

1153

Grid Infrastructureをローリング・パッチ・モードに設定中にエラーが発生しました。

1154

Oracle ASMをローリング・パッチ・モードに設定中にエラーが発生しました。

1156

クラスタがアップグレードの途中であるため、ローリング・パッチ・モードの変更を拒否しています。

1157

クラスタが強制的にアップグレードされたため、ローリング・パッチ・モードの変更を拒否しています。

1158

クラスタをローリング・パッチ・モードに設定中にエラーが発生しました。

1159

Grid Infrastructureは少なくとも1つのリモート・ノードでアクティブではないため、クラスタはローリング・パッチ・モードに設定されません。

1162

パッチ・レベルがクラスタのすべてのノード間で一致していないため、ローリング・パッチ・モードの変更を拒否しています。ノード<patch_list>の所定のパッチ・レベルがパッチ・レベル<patch_level> (ノード<node_list>で見つかった)と同じではありません。

1163

Grid Infrastructureのローリング・パッチ・モードをリセット中にエラーが発生しました。

1164

Oracle ASMのローリング・パッチ・モードをリセット中にエラーが発生しました。

1166

Oracle ASMが<current_state>状態にあるため、ローリング・パッチ・モードの変更を拒否しています。

1168

クラスタのローリング・パッチ・モードをリセット中にエラーが発生しました。

1171

パッチ・レベルがクラスタのすべてのノード間で一致していないため、ローリング・パッチ・モードの変更を拒否しています。ノード<node_list>のパッチ・レベルがパッチ・レベル<patch_level> (ノード<node_list>で見つかった)と同じではありません。

1181

Grid Infrastructureのリリース・パッチ・レベルを取得中にエラーが発生しました。

1183

Grid Infrastructureのリリース・パッチ・レベルは<patch_level>で、パッチ<patch_list>の不完全なリストがローカル・ノード上で適用されています。

1191

Grid Infrastructureのソフトウェア・パッチ・レベルを取得中にエラーが発生しました。


6.2.2.2 Rootcrsに関する問題のユースケース

問題1: ロール不可能なパッチがローリング・モードで適用されている

2ノード(ノード1およびノード2)構成において、ロール不可能なパッチをローリング・モードで適用しようとしています。


注意:

デフォルトでは、OPatchautoはローリング・モードでパッチを適用します。

パッチをローリング・モードで適用しているため、すべてのデータベースおよびスタックは停止していません。OPatchautoを実行すると、予定どおりにスタック・インベントリを出力し、バイナリを更新します。

症状

rootcrs.pl -postpatch (Oracleパッチ適用ツール(OPatch)の起動後に必要な手順を実行)を実行すると、複数のノードのASMインスタンスのパッチ・レベルが異なることが原因で失敗します。この状況では、OPatchauto (OPatchを実行)は、ゼロ以外の終了コードで失敗します。ただし、パッチはGIホームに残されたままです。スタックは起動できません。

推奨アクション

重要なのは、この状況ではパッチはすでにノード1に適用されているため、ロールバックする必要はないということです。通常、スタックの起動を試みるのは、最後に実行するステップです。スタックの起動に失敗した場合でも、パッチはノードに正常に適用されています。

パッチはロール不可能であるため、スタックに関する問題を解決するには、次の手順を実行します。

  1. すべてのノードのスタックを停止します。

  2. パッチREADMEに記載されている手動の手順に従って、残りのノードにパッチを適用します。

  3. すべてのノードのスタックを再起動します。

問題2: OPatchautoがGIホームへのパッチ適用に失敗する

サブパッチ(P1およびP2)を含む1つのシステム・パッチがあります。OPatchauto applyを実行すると、最初にRACホームにパッチを適用します。このシナリオでは、P1は時刻t1にRACに適用され、P2は時刻t2にRACに適用されます。OPatchautoは、時刻t3にサブパッチP2をGIホームに適用しようと試みますが、失敗します。

症状

OPatchautoは、ゼロ以外の終了コードで失敗します。エラー・メッセージは、GIホームでサブパッチP2を適用した際に失敗したことを示しています。エラー・メッセージには、ログ・ファイルの場所も記載されています。現在、RACホームにはP1およびP2が含まれていますが、GIホームではP2が欠落しています。

推奨アクション

欠落したパッチをGIホームに適用する必要があります。システム・パッチはすでにRACホームに正常に適用されているため、パッチをロールバックする必要はありません。

  1. ログ・ファイルから、GIホームでのパッチ適用が失敗した原因を判別します。

  2. GIホームでのパッチ適用が失敗したことに関する問題を修正します。

    GIホームでのパッチ適用が失敗した場合、考えられる原因が3つあります。

    • patchgen -- この状況では、patchgenユースケースで指定した推奨アクションを参照してください。また、Patchgenに関する説明も参照してください。

      GIホームに手動でパッチを適用する必要があります。手順は、パッチのREADMEを参照してください。

    • opatch -callコマンドが失敗しました。この状況では、OPatch実行時にエラーが発生しています。たとえば、OPatchが必要なファイルをコピーできていません。

    • rootcrs.pl -prepatch (OPatchを起動する前に、必要な手順を実行)が失敗しました。

      失敗の原因に関係なく、問題を解決してパッチを手動でGIホームに適用する必要があります。

  3. GIホームでopatchauto resumeを再実行します。OPatchautoによって、パッチ適用が失敗した時点から再開されます。

6.2.3 Patchgen

問題

システム・パッチを適用すると、patchgenで発生したエラー状態の結果としてOPatchautoが失敗します。

症状

OPatchautoが失敗した際には、patchgenで発生した問題が原因でパッチの適用に失敗したことを示すSTDOUTエラー・メッセージが表示されます。

推奨アクション

  1. エラー・メッセージがpatchgenエラーの結果として表示されたものであるかどうかを判別します。メッセージ出力でキーワード「patchgen」を検索することにより、エラーの原因がpatchgenであるかどうかを判別できます。次に、patchgenによって生成されたエラー・メッセージの例を示します。キーワード「patchgen」とそれに関連するエラー・コードは太字で示されています。

    例6-3 Patchgenエラー出力

    $export ORACLE_HOME=/scratch/GI12/product/12.1.0/crs 
    $/scratch/GI12/product/12.1.0/crs/bin/patchgen commit -pi 
    13852018 loading the appropriate library for linux 
    java.lang.UnsatisfiedLinkError: 
    /scratch/GI12/product/12.1.0/crs/lib/libpatchgensh12.so (libasmclntsh12.so: 
    cannot open shared object file: No such file or directory) 
    
  2. patchgenエラー・コードに応じて、oerrコマンドを実行し、patchgenで発生した特定の問題の原因とその問題を解決するための推奨アクションを取得します。推奨アクションを実装します。OERRの実行に関する説明を参照してください。

  3. patchgenエラーが発生すると、パッチを維持するかまたはロールバックするかを尋ねられます。デフォルトでは、patchgenはパッチをロールバックします。パッチをロールバックするどうかにより、次のステップでの対策が決定されます。

    • パッチがロールバックされなかった場合は、patchgenを再度実行します。

      エラーが発生した場合でも、パッチ自体はロールバックされていないため、GI/RACホームに残されたままです。

    • パッチがロールバックされた場合、OPatchautoはシステム・パッチをRACホームに適用しますが、サブパッチはすべてがGIホームに適用されるわけではありません。この時点で、システム・パッチの一部のみをGIホームに適用する必要があります。

      OPatchは、lsinventoryを介して適用されなかったパッチを通知します。特定のサブパッチを適用するには、次の手順に従って手動でパッチを適用する必要があります。

      1. スタックを停止します。

      2. GIホームでopatch apply (OPatchautoではなく)を実行します。

      手動によるパッチ適用の明示的な手順は、パッチのREADMEを参照してください。

次の表に、生成される可能性があるpatchgenエラー・コードを示します。

表6-2 Patchgenエラー・コード

エラー・コード 理由 デバッグ情報

2

内部エラー

一般的な失敗エラー・コード。

3

内部エラー

MS Windows: リソース・ファイルの読取りエラー。

4

内部エラー

MS Windows: リソース・ファイルの書込みエラー。

5

内部エラー

Unix: パッチ・リポジトリを開くのに失敗しました。

6

内部エラー

Unix: フルパスlibasmclntshの正規化に失敗しました。

7

内部エラー

Unix: パッチ・リポジトリへの書込みに失敗しました。

18

内部エラー

PGAの初期化に失敗しました。

19

内部エラー

パッチ・イテレータの初期化に失敗しました。

40

構文エラー。適切なメッセージが表示されます。

patchgenの引数がありません。

例: $]patchgen

41

構文エラー。適切なメッセージが表示されます。

引数がありません。

patchgen commit/recover

例: patchgen commit

42

構文エラー。適切なメッセージが表示されます。

-pi patchidsが数字ではありません。

例: patchgen commit -pi 123d

43

構文エラー。適切なメッセージが表示されます。

-rb patchidsが数字ではありません。

例: patchgen commit -rb 123d

44

構文エラー。適切なメッセージが表示されます。

次のコマンドの引数が、

patchgen commit/recover

-piまたは-rb以外になっています。

例: patchgen recover -random

45

構文エラー。適切なメッセージが表示されます。

Patchgenが無効な引数を指定して起動されました。

例: patchgen comit -pi

46

libpatchgensh12.soのロードに失敗しました。



6.2.4 datapatch

問題

OPatchautoを実行して、4つのGI/RACホームにパッチを適用しようとしています。このパッチには、データベースを更新するためのビットおよびSQLの両方が含まれています。OPatchautoを実行すると、次の2つのアクションが実行されます。

  • GI/RACホームへのビットの適用

  • SQLの実行(datapatchコマンドを使用)

通常は、GI/RACホームごとにOPatchautoを実行します。実行するごとに、OPatchautoはdatapatchを呼び出してパッチSQLを実行します。datapatchは、最初のn-1ノードでは何も実行しません(no-op)。最後(n番目)のノードで、datapatchはパッチSQLの実行を試みます。

datapatchが失敗した場合は、エラー・メッセージが表示されます。エラーの原因がdatapatchであるかどうかを確認するには、OPatchautoデバッグ・ログを表示します。

症状

SQLPatch/datapatchが失敗したことを示す警告メッセージが表示されます。datapatchが最後のノードへのSQLの適用に失敗した際に、警告メッセージが生成されました。

推奨アクション

通常、警告メッセージは無視でき、最後のノードで手動でdatapatchを実行します。datapatchはデータベースへの接続を確立し、問合せ可能なインベントリ(http://docs.oracle.com/cd/E16655_01/appdev.121/e17602/d_qopatch.htm)を使用して、Oracleホームのバッチ・インベントリに関する情報を取得します。Oracle Databaseへの接続の確立に関する問題は、Oracleエラー・コードによる説明と適切な処置が示されているORA-nnnnnエラーになる可能性があります(http://docs.oracle.com/cd/B28359_01/server.111/b28278/toc.htm)。さらに、問合せ可能なインベントリには、いくつかの予想されるORA-nnnnnがあります。このようなエラーのリストは、http://docs.oracle.com/cd/E16655_01/appdev.121/e17602/d_qopatch.htm#CEGIFCHHで参照することができます。他の問題については、Oracleサポートに連絡してください。

ロール可能なパッチとロール不可能なパッチ: パッチは、ローリング・モードまたは非ローリング・モードのいずれかで適用するように設計されています。ローリング・モードと非ローリング・モードの詳細は、「パッチ適用モード」を参照してください。パッチがロール可能であるかまたはロール不可能であるかに応じて、対策を決定します。

パッチがロール可能である場合、SQLスクリプトに関してパッチに依存性はありません。データベースを問題なく起動できます。ロール可能なパッチは、ローリング・モードと非ローリング・モードの両方で適用できます。

ただし、パッチがロール不可能である場合は、最初にパッチをロールバックする必要があります。OPatchautoは、ロール不可能なパッチをローリング・モードでは適用できないようにします。

順序

  1. OPatchautoが、datapatch/sqlpatchについての警告とともに成功します。

  2. ロール可能なパッチの場合:

    1. ノード1からノード(n-1)までのdatapatchエラーは無視します。

    2. 最後のノード(ノードn)で、datapatchを再度実行します。このコマンドはログ・ファイルから切り取って貼り付けることができます。

    3. 最後のノードでまだdatapatchエラーが発生する場合は、Oracleサポートに連絡するか、またはサービス・リクエストを開きます。

  3. ロール不可能なパッチの場合:

    1. すべてのノードですべてのデータベースとスタックを手動で停止します。

    2. それぞれのノードでopatchauto applyを実行します。

    3. スタックとデータベースを起動します。datapatchが接続してSQLを適用するために、データベースを起動する必要があります。

    4. 最後のノードで、datapatchを手動で実行します。datapatchを実行しないと、パッチのSQLが適用されず、不具合修正の効果がありません。さらに、SQLを実装するための変更内容によっては、システムの動作が不正確になる場合があります。

    5. まだdatapatchが失敗する場合は、パッチをロールバックする必要があります。Oracleサポートに連絡して支援を要請するか、またはサービス・リクエストを開きます。

6.3 パッチ適用中の既知の問題

次のパッチ適用シナリオは、パッチ適用中に発生する可能性のある既知の問題の例です。

6.3.1 既知の問題: rootcrs.pl

次の問題は、rootcrs.plの実行に関連しています。

6.3.1.1 Opatchauto Rollbackの失敗

問題

-norestartオプションが指定されていると、rootcrs.pl -postpatchopatchauto rollbackが失敗します。

症状

10月のPSUパッチのロールバック時に、-norestartモードでのOPatchautoの実行がrootcrs.pl -postpatchステップで失敗します。

例6-4 コンソール出力

Starting CRS ... Failed 
Command "/usr/bin/perl /scratch/GI12/app/12.1.0/grid/crs/install/rootcrs.pl 
-postpatch -norestart" execution failed: 
Died at /scratch/GI12/app/12.1.0/grid/crs/install/crspatch.pm line 851.

推奨アクション:

前提条件である個別パッチが必須です。

6.3.1.2 リーフ・ノードへのパッチ適用時のOPatchautoの失敗

問題

リーフ・ノードのスタックが稼働していない場合、フレックス・クラスタのリーフ・ノードのopatchautoが失敗します。

症状

スタックがクラスタで稼働していない場合、フレックス・クラスタのリーフ・ノードでのOPatchautoの実行が失敗します。これは、ローリング・モードおよび非ローリング・モードの両方のパッチ適用で発生します。次の例で示されるコンソール・メッセージとともにrootcrs.pl -prepatchが失敗します。

例6-5 コンソール出力

Using configuration parameter file: crs/install/crsconfig_params 2013/09/27 06:00:01 CLSRSC-455: Failed attempt to initiate patch on a Leaf node

推奨アクション:

パッチ適用の前に、リーフ・ノードのスタックを起動します。

6.3.2 既知の問題: datapatch

次の問題は、datapatchの実行に関連しています。

6.3.2.1 ロールバック中に最後のノードではなく最初のノードでdatapatchが実行される

問題

opatchauto rollbackの実行中、最初のノードそのものでSQLの変更がロールバックされます。

症状

SQLの変更は最初のノードからロールバックされます。

例6-6 ログ・ファイル出力

Output from the command: 
2013-10-07_05-16-28 : 
SQL Patching tool version 12.1.0.1.0 on Mon Oct  7 05:15:31 2013 
Copyright (c) 2012, Oracle.  All rights reserved. 
. 
Connecting to database...OK 
Determining current state...done 
The following patches will be rolled back: 17027533

推奨アクション

パッチがすべてのノードからロールバックされる場合は、メッセージを無視します。回避策はありません。

6.3.3 既知の問題: OPatch

次の問題は、OPatchの実行に関連しています。

6.3.3.1 opatch napplyの失敗

問題

アクティブ・ファイルが原因で、CRSホームでのopatch napplyステップ時にOPatchautoが失敗します。

症状

Gridホームのパッチ適用時にOpatchautoが失敗します。

例6-7 ログ・メッセージ

[Sep 19, 2013 6:52:14 PM]    Following executables are active : 
                             /u01/app/12.1.0/grid/lib/libclntsh.so.12.1 
[Sep 19, 2013 6:52:14 PM]    Prerequisite check 
"CheckActiveFilesAndExecutables" failed.

推奨アクション

少し時間を置いてから、opatchauto resumeを実行します。

6.3.4 既知の問題: OPatchauto

次の問題は、OPatchautoの実行に関連しています。

6.3.4.1 OPatchauto 12.1.0.1.5の既知の問題

次の問題は、OPatchautoバージョン12.1.0.1.5のみに関連しています。

6.3.4.1.1 ソフトウェアのみのホーム

問題: OPatchautoでは、ソフトウェアのみのホームはサポートされません。

症状: config.shが次のエラー・メッセージで失敗します。

kfod.bin: cannot execute: No such file or directory

推奨アクション: パッチREADMEの指示に従って、パッチを手動で適用します。

6.3.4.1.2 OPatchautoが共有ホームを判別できない

問題: OPatchautoが共有ホームを見つけられないためエラーが発生します。これは共有ホームと非共有ホームのどちらでも発生することがあります。

症状: OPatchautoによって次のエラーが生成されます。

System Configuration Collection failed: oracle.osysmodel.driver.crs.productdriver.ProductDriverException: Unable to determine if "ORACLE HOME" is a shared oracle home.

推奨アクション: OracleホームでROOTとして次のコマンド(以下の例)を実行して、根底にある問題を判別します。コマンドは、opatchautoが実行されたのと同じ場所で実行してください。

RACホームの場合:

su <RAC OWNER> -c "$GRID_HOME/bin/cluvfy comp ssa -t software -s

$DB_HOME -n $NODELIST -display_status"

GRIDホームの場合:

su <GRID OWNER> -c "$GRID_HOME/bin/cluvfy comp ssa -t software -s

$GRID_HOME/crs/install -n $NODELIST -display_status"

例:

su <GRID OWNER> -c "$GRID_HOME/bin/cluvfy comp ssa -t software -s

$GRID_HOME/crs/install -n node1,node2,node3 -display_status"

根底にある問題が解決してから、opatchautoを再び実行します。

6.3.4.1.3 RAC Oneに関連する問題:

問題: OPatchautoがRAC Oneデータベースのステータスを検出できません。このため、データベースにSQLの変更を適用できません。

症状: OPatchautoによってコンソールに次のメッセージが表示されます。

[WARNING] The local database instance 'INST' from 'RAC_HOME' is not running. SQL changes, if any, will not be applied.

推奨アクション: RAC Oneデータベースに対してdatapatchコマンドを手動で実行します。正確なコマンドはopatchautoログ・ファイルに表示されます。

6.3.4.1.4 -norestartモードでのOPatchautoの動作

問題: OPatchautoを-norestartモードで実行した場合にも、メッセージ「Starting CRS ... Successful」が表示されます。

症状: OPatchautoによってコンソールにこのメッセージが表示されます。

Starting CRS ... Successful

推奨アクション: メッセージを無視します。OPatchautoによって必要な処理が実行されます。実際にはCRSは起動されません。

6.3.4.1.5 OPatchautoがSystemPatch内の入力サブセット・パッチを適用できない

問題: 既存のパッチのサブセットである個別パッチがシステム・パッチに含まれる場合、OPatchautoはそのシステム・パッチを適用できません。

症状: コマンドopatch prereq CheckConflictAgainstOHが失敗したと報告されます。

推奨アクション: ホームでスーパーセット・パッチをロールバックし、システム・パッチを適用してから、スーパーセット・パッチを再び適用します。

6.3.4.1.6 OPatchautoがsrvctl start homeでエラー・コードCRS-2717で失敗する

問題: OPatchautoがRACホームを起動できません。

症状: エラー・メッセージにコードCRS-2717が含まれます。

推奨アクション: OPatchautoログ・ファイルに表示される保留中の手順を手動で実行します。

6.3.4.1.7 SystemInstanceの作成の失敗

問題: OPatchautoがシステム・インスタンスの作成に失敗します。

症状: システム構成収集エラー: oracle.osysmodel.driver.crs.productdriver.ProductDriverException: oracle.ops.mgmt.cluster.ClusterInfoException: PRKC-1094 : crsのアクティブ・バージョンの取得に失敗しました:

推奨アクション: 使用可能な修正は、バグ19262534を参照してください。

6.3.4.2 datapatchがすべてのノードで実行される

問題

opatchauto applyまたはopatchauto rollbackの実行によって、datapatchがすべてのノードで実行されます。

症状

パッチを適用する最初のノードで、RACデータベースがそのノードで構成されている場合、例6-8に示すメッセージが表示されます。

例6-8 コンソール出力

SQL changes, if any, are applied successfully on the following database(s):

推奨アクション

このメッセージは無視してかまいません。datapatchステップによって行われるSQLの変更についての詳細は、OPatchautoデバッグ・ログから取得できます。datapatchが、以前のパッチ適用セッションで保留になったSQL変更を適用していた可能性もあります。

6.3.4.3 OPatchauto再開時にdatapatchが実行されない

問題

opatchauto resume -rebootdatapatchステップが実行されません。

症状

opatchauto resume -rebootコマンドで、datapatchステップが実行されません。

推奨アクション

datapatchステップは、いずれのノードからも手動で実行できます。保留中のすべての変更も、次のOPatchautoセッションのdatapatchコマンドによって実行されます。

環境変数ORACLE_HOMEおよびORACLE_SIDを設定し、次のコマンドを実行します。

$ORACLE_HOME/OPatch/datapatch

6.3.4.4 一般的なOPatchautoの失敗

問題

特定のステップの実行中に、opatchautoコマンドが失敗します。

症状

ある手順の実行中にOPatchautoが失敗した場合は、必ず、失敗した手順を含むすべての保留中の手順が「次の手順はまだ実行する必要があります」としてデバッグ・ログにリストされます。

例6-9 デバッグ・ログ・メッセージ

-------------------Following steps still need to be executed-------------------
/usr/bin/perl /scratch/GI12/app/12.1.0/grid/crs/install/rootcrs.pl -postpatch (TRIED BUT FAILED)
 
/scratch/aime/DB12/app/aime/product/12.1.0/dbhome_1/bin/srvctl start home -o /scratch/aime/DB12/app/aime/product/12.1.0/dbhome_1 -n slc00eaj -s /scratch/aime/DB12/app/aime/product/12.1.0/dbhome_1/OracleHome-e97923af-d77e-42fc-be51-6459b56daed6.stat 
 
2013-10-07_23-50-31 :
Ignoring the dbconsole command.
2013-10-07_23-50-36 :
Executing the datapatch command:
/bin/bash -c 'ORACLE_HOME=/scratch/aime/DB12/app/aime/product/12.1.0/dbhome_1 ORACLE_SID=$(/scratch/aime/DB12/app/aime/product/12.1.0/dbhome_1/bin/srvctl status instance -d orcl -n slc00eaj | cut -d " " -f 2) /scratch/aime/DB12/app/aime/product/12.1.0/dbhome_1/OPatch/datapatch'
 
[WARNING] The local database instance 'orcl1' from '/scratch/aime/DB12/app/aime/product/12.1.0/dbhome_1' is not running. SQL changes, if any,  will not be applied.
To apply the SQL changes, bring up the database instance and run the above command manually from any one node (run as aime).

推奨アクション

datapatchステップに関連するすべての警告/情報メッセージを無視し、datapatchステップを、そのセクションに表示されるその他のすべてのステップとともに実行します。

6.3.4.5 OPatchautoがエラー・メッセージなしに失敗する

問題

opatchautoコマンドが、コンソールにエラー・メッセージやスタック・トレースも出力せずに失敗します。

症状

コンソールおよびログ・ファイルには次のメッセージが表示されます。

例6-10 コンソール出力

Starting CRS ... Failed

例6-11 ログ・メッセージ

Failed to run this command :
/usr/bin/perl $GRID_HOME/crs/install/rootcrs.pl -postpatch
 
Executing command:
$RAC_HOME/bin/srvctl start home …

推奨アクション

次の場所にあるcrspatchログ・ファイルを参照し、タイムスタンプがOPatchautoの実行時間を指していることを確認します。

$GRID_HOME/cfgtoollogs/crsconfig/crspatch_<hostname>_<timestamp>.log

このファイルに「CLSRSC-400: インストールを続行するにはシステムの再起動が必要です。」というメッセージが含まれる場合は、次の手順に従います。

  1. マシンを再起動します。

  2. 次のコマンドを実行します。

    opatchauto resume -reboot

6.4 一般的なエラーの症状と状態

次に一般的なエラー状態を示します。

6.4.1 OPatch Apply (OPERRエラー)

詳細は、「エラー・メッセージ」を参照してください。

6.4.2 Rootcrs.pl -Postpatch

製品スタックを起動しようとする際にパッチの試行が失敗するようなパッチ・シナリオです。

6.4.3 Patcherr

再リンクの失敗が原因で、パッチの試行が失敗するパッチ・シナリオです。

6.5 OPatchautoログ・ファイル

ログ・ファイルを使用すると、パッチ適用セッション時に問題が発生した場合の診断ができます。OPatchautoは、applyおよびanalyzeの両方の操作に対してログ・ファイルを生成します。

1回のOPatchautoセッションで、3つのタイプのログ・ファイルが生成されます。

  • 標準ログ・ファイル

  • デバッグ・ログ・ファイル

  • ステップ・ログ・ファイル

標準ログ・ファイル

標準ログ・ファイルには、パッチを適用したGI/RACホーム、適用したパッチおよび指定したパッチ・オプション(ローリング、非ローリングなど)などの基本的なセッション情報が含まれています。

デバッグ・ログ・ファイル

デバッグ・ログ・ファイルは、ログ・ファイルのスーパーセットで、Oracleサポートが使用することを目的としています。デバッグ・ログ・ファイルには、標準ログ・ファイルの内容の他に、詳細なセッション情報が含まれています。たとえば、実行された各コマンドに対するコマンドの出力もログに記録されます。

ステップ・ログ・ファイル

ステップ・ログ・ファイルには、パッチ適用セッション時にOPatchautoが生成した手順のみが含まれています。このファイルを使用すると、無関係な情報を無視してOPatchautoが実行した手順を表示できます。パッチ適用セッション時に問題が発生した場合は、パッチ適用プロセスのどのステップで失敗したのかを確認できます。

6.5.1 ログ・ファイルのネーミング規則

OPatchautoのログ・ファイル名は、次のネーミング規則を使用して生成されます。

表6-3 ログ・ファイルのネーミング規則(デプロイ)

ログ・ファイル ネーミング規則

標準

opatch_gi_<timestamp>_deploy.log

デバッグ

opatch_gi_<timestamp>_deploy.debug.log

ステップ

opatch_gi_<timestamp>_deploy.steps.log


表6-4 ログ・ファイルのネーミング規則(分析)

ログ・ファイル ネーミング規則

標準

opatch_gi_<timestamp>_analyze.log

デバッグ

opatch_gi_<timestamp>_analyze.debug.log

ステップ

opatch_gi_<timestamp>_analyze.steps.log


6.5.2 ログ・ファイルの場所

OPatchautoを実行すると、ログ・ファイルの正確な場所が画面出力に表示されます。デフォルトでは、ログ・ファイルは次の場所にあります。

$GRID_HOME/cfgtoollogs/opatchauto/<PATCH_ID>/