Oracle® Solaris Cluster データサービス (Oracle Database 用)

印刷ビューの終了

更新: 2016 年 1 月
 
 

Oracle Grid Infrastructure SCAN リスナーを構成する方法

クラスタ用 Oracle Grid Infrastructure を使用して HA for Oracle Database データサービスが配備される場合、シングルインスタンスデータベースの優先リスナーは、単一クライアントアクセス名 (SCAN) リスナーを使用します。HA for Oracle Database 構成で SCAN リスナーを活用するには、シングルインスタンスデータベースの local_listener および remote_listener パラメータが正しく設定されていることを確認する必要があります。

SCAN リスナーの詳細については、使用している Oracle Grid Infrastructure ソフトウェアのバージョンの Oracle Grid Infrastructure のインストールガイドを参照してください。

始める前に

次のガイドラインに従ってください。

  • SCAN リスナーに使用する IP アドレスが、Oracle Database リソースグループの論理ホスト名リソースのために構成する IP アドレスと同じサブネット上に存在することを確認してください。それ以外の場合、パブリックネットワークで障害が発生した場合に、Oracle Database リソースはフェイルオーバーしません。

  • SCAN リスナーを構成した場合は、SUNW.oracle_listener リソースタイプを持つ Oracle Database リスナーリソースを作成するための、このマニュアル内のあとの手順を無視できます。SCAN リスナーを構成する場合、Oracle Database リスナーリソースは必要ありません。

  1. データベースユーザーとして、SQL*Plus を使用して Oracle Database にログインします。
  2. local_listener パラメータにローカルリスナー IP 番号およびポート番号が含まれていることを確認します。
    1. local_listener パラメータ設定を表示します。
      SQL> show parameters local_listener
      NAME                   TYPE        VALUE
      ---------------------- -----------------------------------------
      local_listener         string      (ADDRESS=(PROTOCOL=TCP)(HOST=node-IP-number)(PORT=port-number))
      SQL>
    2. local_listener パラメータにローカルリスナー IP 番号およびポート番号が含まれていない場合は、パラメータを空白の値に設定し、Oracle データベースを再起動します。

      Oracle データベースが再起動されると、Oracle Clusterware が動的に local_listener パラメータを設定します。

      SQL> alter system set local_listener='' scope=both;
      System altered.
    3. local_listener パラメータ設定が正しいことを確認してください。
      SQL> show parameters local_listener
  3. remote_listener パラメータが SCAN 名およびポート番号を参照していることを確認します。
    1. remote_listener パラメータに SCAN 名およびポート番号が含まれているかどうかを確認します。
      phys-schost$ srvctl config scan
      SCAN name: SCAN-name, Network: network-number
      …
      phys-schost$ srvctl config scan_listener
      SCAN Listener LISTENER_SCAN1 exists. Port: TCP:port-number
    2. remote_listener パラメータに SCAN 名およびポート番号が含まれているかどうかを確認します。
      SQL> show parameter remote_listener
      
      NAME                                 TYPE        VALUE
      ------------------------------------ ----------- ------------------------------
      remote_listener                      string       SCAN-name:port-number
      SQL>
    3. remote_listener パラメータに SCAN 名およびポート番号が含まれていない場合は、それらの値でパラメータを設定します。
      SQL> alter system set remote_listener='SCAN-name:port-number' scope=both
    4. remote_listener パラメータの SCAN 設定を確認します。
      SQL> show parameter remote_listener
  4. 各クラスタノードで、tnsnames.ora ファイルがネットサービス名の SCAN 名を参照していることを確認してください。
    ORCL =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = SCAN-name)(PORT = port-number))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = orcl)
        )
      )