STOP_OBSERVER
STOP_OBSERVER
関数を使用すると、Data Guard Broker構成でファスト・スタート・フェイルオーバーのオブザーバを停止できます。
STOP_OBSERVER
関数
DBMS_DG.STOP_OBSERVER (
ob_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;
パラメータ
パラメータ | 説明 |
---|---|
ob_name |
停止するオブザーバの名前を示す文字列。有効な値を次に示します。
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- この関数をコールできるのは、ブローカ構成内のいずれかのデータベースに接続されている間です。
- このコマンドではファスト・スタート・フェイルオーバーを無効化できませんが、ファスト・スタート・フェイルオーバーはオブザーバがないと開始できません。
- このコマンドの発行時に、ファスト・スタート・フェイルオーバーが有効化されている必要はありません。
- この関数のコール時にファスト・スタート・フェイルオーバーが有効になっている場合は、プライマリ・データベースとスタンバイ・データベースが接続されており相互に通信している必要があります。そうでない場合は、次のエラーが戻されます。
ORA-16636 ファスト・スタート・フェイルオーバーのターゲット・スタンバイがエラー状態のため、オブザーバを停止できません
プライマリ・データベースとスタンバイ・データベースの間に接続が存在しない場合は、プライマリ・データベースで
FORCE
オプションを指定してファスト・スタート・フェイルオーバーの無効化を発行した後に、この関数をコールできます。オブザーバおよびターゲットのスタンバイ・データベースから切断されたプライマリ・データベース上でFORCE
オプションを指定してファスト・スタート・フェイルオーバーを無効化しても、オブザーバによる、ターゲットのスタンバイ・データベースへのファスト・スタート・フェイルオーバーの開始を無効にはできません。 - この関数のコール時にファスト・スタート・フェイルオーバーが有効になっていない場合は、オブザーバを停止したときにプライマリ・データベースのみが実行されている必要があります。
- オブザーバは、この関数のコールの直後に停止されるわけではありません。オブザーバは、次回オブザーバーがブローカと接続されるまで停止されたことを検出しません。この関数のコールが正常に完了した後はすぐに、どのコンピュータででもオブザーバを再度起動できます。旧オブザーバがまだ自身の停止を検出していない場合でも、新規オブザーバを即座に開始できます。ブローカ構成では新しいオブザーバがすでに開始されているため、元のオブザーバの開始を試行すると失敗します。
- この関数では、新しいファスト・スタート・フェイルオーバー・ターゲットまたは新しいマスター・オブザーバへの切替えが進行中の場合は、エラーが返されます。
- この関数では、登録されているオブザーバが2つ以上ありそのマスターのみを停止しようとすると、エラーが返されます。
戻り値
エラー | 説明 |
---|---|
ORA-00000: 正常に完了しました。 |
指定されたオブザーバは正常に停止されました。 |
その他 |
Data Guard Brokerで、指定されたオブザーバを停止できませんでした。戻り値で、この失敗の理由が示されます。 |