Oracle Netを使用すると、Oracleデータベース、Oracle以外のデータベース、ゲートウェイ、外部プロシージャなど、様々なサービスへの接続が可能になります。
ユーザーは接続するサービスに対して識別子とともにユーザー名とパスワードを渡すことで、接続リクエストを実行します。接続識別子と呼ばれるこの識別子は、次のものを識別します。
接続先サービス
パス、またはネットワークを通じてサービスを取得するためのネットワーク・ルート
接続識別子は、いくつかの異なる方法で指定されます。最も一般的な方法の1つは、サービスの別の名前であり、接続記述子にマップする、ネット・サービス名を使用する方法です。接続記述子には、宛先サービスとネットワーク・ルート情報が含まれます。接続先サービスは、Oracle9iまたはOracle8iのリリースのデータベースではサービス名、Oracle8またはOracle7のデータベースではOracleシステム識別子(SID)を使用して指定します。ネットワーク・ルートは、少なくとも、ネットワーク・アドレスによりリスナーの位置を指定します。
接続記述子にマップされるsalesというネット・サービス名の例を次に示します。
sales=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=sales-server1)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=sales.us.example.com))
sales1-serverにあるリスナーは、sales.us.example.comというデータベース・サービスに対する接続リクエストを、ポート1521を使用してTCP/IPプロトコルでリスニングしています。
接続識別子とその接続記述子は、1つ以上のネーミング・メソッドに格納されます。接続リクエスト時には、クライアントはネーミング・メソッドを介して、接続識別子(前述の例ではsales)を接続記述子に変換します。次にクライアントは、接続記述子で指定されたリスナー・アドレスにリクエストを送信します。
リスナーは、1つのプロトコルを介してクライアント接続を受け入れます。リスナーは、クライアントの情報を、サービス登録を介してデータベース・サービスから受信した情報と比較し、同時に自身の構成ファイルであるlistener.oraファイルに格納された情報とも比較します。情報が一致すると、接続が許可されます。
関連トピック