日本語PDF

SCAN使用時のデータベース接続の作成方法

サービス名を使用しているOracle RACデータベースにSCANを使用して接続する場合は、環境に基づいて次のアクションが発生します。

番号が付けられたアクションは、「SCANを使用するOracle RAC接続のロード・バランシング・アクション」に示す矢印に対応しています。

  1. 各インスタンスのLREGプロセスは、ローカル・ノード上のデフォルトのリスナーと、REMOTE_LISTENERデータベース・パラメータで指定された各SCANリスナーにデータベース・サービスを登録します。リスナーは、インスタンスとディスパッチャによって処理されている作業の量に基づいて動的に更新されます。

  2. クライアントは、次の書式の接続記述子を使用して、データベース接続要求を発行します。

    orausr/@scan_name:1521/webapp
    

    ノート:

    簡易接続ネーミング・メソッドを使用する場合は、クライアントのsqlnet.oraファイルに、NAMES.DIRECTORY_PATHパラメータで指定されたネーミング・メソッドのリストのEZCONNECTが含まれていることを確認します。

  3. クライアントは、DNSを使用してscan_nameを解決します。SCANに割り当てられる3つのアドレスがDNSから戻された後、クライアントは1番目のIPアドレスに接続要求を送信します。接続要求が失敗すると、クライアントは次のIPアドレスを使用して接続を試行します。

  4. 接続要求が成功すると、クライアントは、salesデータベースをホストし、webappサービスを提供するインスタンスを持つクラスタのSCANリスナーに接続します(この例ではsales1およびsales2)。SCANリスナーは、インスタンスsales1およびsales2のワークロードと、これらが実行されているノードのワークロードを比較します。SCANリスナーがnode2node1よりも負荷が小さいと判断すると、SCANリスナーはnode2を選択し、そのノードのリスナーのアドレスをクライアントに送信します。

  5. クライアントは、node2のローカル・リスナーに接続します。ローカル・リスナーは、データベース接続のための専用サーバー・プロセスを起動します。

  6. クライアントは、node2の専用サーバー・プロセスに直接接続し、sales2データベース・インスタンスにアクセスします。

図6-1 SCANを使用するOracle RAC接続のロード・バランシング・アクション

図6-1の説明が続きます
「図6-1 SCANを使用するOracle RAC接続のロード・バランシング・アクション」の説明