STOP OBSERVER

STOP OBSERVERコマンドは、ファスト・スタート・フェイルオーバー・オブザーバを停止します。

書式

STOP OBSERVER [<observer_name> | ALL];

コマンド・パラメータ

observer_name
停止するオブザーバの名前。名前を指定しない場合、構成に対して登録済オブザーバが1つしかないと、そのオブザーバが停止されます。構成内に複数の登録済オブザーバがある場合は、エラー・メッセージが戻ります。

ALLキーワードを使用すると、このブローカ構成に登録されているすべてのオブザーバが停止します。

使用上のノート

  • このコマンドは、ブローカ構成内のいずれかのデータベースと接続されている場合に発行できます。

  • このコマンドではファスト・スタート・フェイルオーバーを無効化できませんが、ファスト・スタート・フェイルオーバーはオブザーバがないと開始できません。

  • このコマンドの発行時に、ファスト・スタート・フェイルオーバーが有効化されている必要はありません。

  • STOP OBSERVERコマンドの発行時にファスト・スタート・フェイルオーバーが有効化されている場合は、プライマリ・データベースおよびスタンバイ・データベースが接続され、相互に交信している必要があります。そうでない場合は、次のエラーが戻されます。

    ORA-16636 fast-start failover target standby in error state, cannot stop observer
    

    プライマリ・データベースとスタンバイ・データベースが接続されていない場合、プライマリ・データベースでDISABLE FAST_START FAILOVER FORCEコマンドを発行してからSTOP OBSERVERコマンドを発行できます。オブザーバおよびターゲットのスタンバイ・データベースから切断されたプライマリ・データベース上でFORCEオプションを指定してファスト・スタート・フェイルオーバーを無効化しても、オブザーバによる、ターゲットのスタンバイ・データベースへのファスト・スタート・フェイルオーバーの開始を無効にはできません。

  • STOP OBSERVERコマンドの発行時にファスト・スタート・フェイルオーバーが有効化されていない場合は、オブザーバの停止時にプライマリ・データベースのみが実行されている必要があります。

  • オブザーバは、STOP OBSERVERコマンドの発行後すぐには停止されません。オブザーバは、次回オブザーバーがブローカと接続されるまで停止されたことを検出しません。

    STOP OBSERVERコマンドの発行後ただちに、任意のコンピュータでSTART OBSERVERコマンドを再度入力できます。旧オブザーバがまだ自身の停止を検出していない場合でも、新規オブザーバを即座に開始できます。ブローカ構成では新しいオブザーバがすでに開始されているため、元のオブザーバの開始を試行すると失敗します。

  • 新しいファスト・スタート・フェイルオーバーまたは新しいマスター・オブザーバへの切替えが進行中の場合、STOP OBSERVERコマンドは失敗します。

  • 登録済オブザーバが2つ以上ある場合、マスターのみを停止しようとすると、STOP OBSERVERコマンドは失敗します。

コマンドの例

次の例では、ブローカ構成内の動作しているすべてのオブザーバを停止します。

DGMGRL> STOP OBSERVER ALL;