Sun Cluster の Oracle 用データサービス (Solaris OS 版)

Oracle サーバー障害モニターの操作

Oracle サーバーの障害モニターは、サーバーへのリクエストを使用して、サーバーの状態をクエリします。

サーバー障害モニターは、pmfadm を介して起動され、モニターの可用性を高めます。何らかの理由でモニターが終了すると、手順モニター機能 (PMF) がモニターを自動的に再起動します。

サーバー障害モニターは、次の要素から構成されます。

このセクションには、サーバー障害モニターに関する次の情報が含まれています。

主要障害モニターの操作

主要障害モニターは、データベースがオンラインで、トランザクション中にエラーが返されない場合、操作が成功したと見なします。

データベースクライアント障害プローブの操作

データベースクライアント障害プローブは、次の操作を実行します。

  1. アーカイブされた再実行ログの区分のモニター「アーカイブされた再実行ログの区分をモニターする操作」を参照してください。

  2. 区分が健全である場合、データベースが操作可能かどうかを決定します。「データベースが操作可能かどうかを決定する操作」を参照してください。

プローブは、リソースプロパティ Probe_timeout で設定されているタイムアウト値を使用して、Oracle のプローブを成功させるために割り当てる時間を決定します。

アーカイブされた再実行ログの区分をモニターする操作

データベースクライアント障害プローブは、動的パフォーマンス表示 v$archive_dest をクエリーし、アーカイブされた再実行ログのすべての可能な送信先を決定します。すべてのアクティブな送信先に対して、プローブは送信先が健全で、アーカイブされた再実行ログを保存するための十分な空き容量があるかどうかを決定します。

データベースが操作可能かどうかを決定する操作

アーカイブされた再実行ログ用の区分が健全な場合、データベースクライアント障害プローブは動的パフォーマンス表示 v$sysstat をクエリーし、データベースパフォーマンス統計を取得します。これらの統計が変更されている場合、データベースが操作されていることを示します。連続したクエリー間で統計が変化しなかった場合、障害プローブはデータベーストランザクションを実行し、データベースが運用されているかを判定します。これらのトランザクションには、ユーザー表スペースでの、表の作成、更新およびドロップが関係しています。

データベースクライアント障害プローブは、Oracle ユーザーとしてすべてのトランザクションを実行します。このユーザーの ID は、「ノードの準備方法」に説明されているように、ノードまたはゾーンの準備中に指定されます。

データベーストランザクション障害に対応する、サーバー障害モニターによるアクション

データベーストランザクションに失敗した場合、サーバー障害モニターは障害の原因になったエラーによって決定されるアクションを実行します。サーバー障害モニターが実行するアクションを変更するには、「Sun Cluster HA for Oracle サーバー 障害モニターのカスタマイズ」に説明されているように、サーバー障害モニターをカスタマイズします。

アクションで外部プログラムの実行が必要な場合、そのプログラムはバックグラウンドで別のプロセスとして実行されます。

可能なアクションは、次のとおりです。

サーバー障害モニターによる記録された警告のスキャン

Oracle ソフトウェアは、警告を警告ログファイルに記録します。このファイルの絶対パスは、SUNW.oracle_server リソースの alert_log_file 拡張プロパティーにより指定されます。サーバー障害モニターは、次のタイミングで新しい警告があるかどうか、警告ログファイルをスキャンします。

サーバー障害モニターが検出する警告ログに対するアクションが定義されている場合、サーバー障害モニターは警告に対してアクションを実行します。

記録された警告用の事前設定アクションは、表 2 に一覧表示されています。サーバー障害モニターが実行するアクションを変更するには、「Sun Cluster HA for Oracle サーバー 障害モニターのカスタマイズ」に説明されているように、サーバー障害モニターをカスタマイズします。