9.2.2 ローカル・リスナーへの情報の登録
デフォルトのLREGプロセスでは、TCP/IP、ポート1521のデフォルトのローカル・アドレス上のローカル・リスナーにサービス情報が登録されます。リスナー構成がデータベース構成と同期している場合、LREGでは、別のノード上の非デフォルトであるローカル・リスナーまたはリモート・リスナーにサービス情報を登録できます。同期が行われるのは、listener.oraファイルでリスナーのプロトコル・アドレスが指定され、初期化パラメータ・ファイルでリスナーの場所が指定されている場合です。
TCP/IPまたはポート1521を使用しないローカル・リスナーへLREGプロセスによって登録する必要がある場合は、初期化ファイルのLOCAL_LISTENERパラメータを構成して、ローカル・リスナーを指定します。
共有サーバー環境では、初期化パラメータ・ファイルのDISPATCHERSパラメータのLISTENER属性を使用して、ディスパッチャを非デフォルトのローカル・リスナーに登録できます。LREGでは、ディスパッチャ情報のリスナーへの登録にLOCAL_LISTENERパラメータとLISTENER属性が使用できるため、リスナーの値が同じ場合は、パラメータと属性の両方の指定は不要です。
LOCAL_LISTENERは、カンマ区切りのリスト・パラメータです。文字列にカンマがある場合、文字列全体を二重引用符で囲む必要があります。LOCAL_LISTENERパラメータを次のように設定します。
ALTER SYSTEM SET LOCAL_LISTENER=["]listener_address["][,...];
たとえば、リスナー・アドレス"ab,cd"が入力された場合、1つのリスナー・アドレスに解決されます。アドレスがab,cdと入力された場合、abとcdの2つのリスナー・アドレスに解決されます。
共有サーバー接続の場合は、LISTENER属性を次のように設定します。
ALTER SYSTEM SET DISPATCHERS="(PROTOCOL=tcp)(LISTENER=listener_address)";
前述のコマンドで、listener_addressは、データベース・サーバー上にあるtnsnames.oraファイルなどのネーミング・メソッドによってリスナー・プロトコル・アドレスに解決されます。
ノート:
-
LOCAL_LISTENERパラメータの動的な更新には、次のようにSQL文の
ALTER SYSTEMを使用します。ALTER SYSTEM SET LOCAL_LISTENER=["]listener_address["][,...]次のような文でパラメータをNULLに設定すると、TCP/IP、ポート1521のデフォルトのローカル・アドレスが使用されます。
ALTER SYSTEM SET LOCAL_LISTENER=''
-
LISTENER属性はLOCAL_LISTENERパラメータに優先されます。その結果、SQL文のALTER SYSTEM SET LOCAL_LISTENERはこの属性の設定値に影響を与えません。
例9-1では、データベースがホストsales1-serverにあります。このホスト上のリスナーはlistener_sales1という名前で、ポート1521ではなくポート1421でリスニングするように構成されています。
例9-1 専用サーバー環境でのローカル・リスナーの登録
-
ローカル・リスナーのあるホストで、Oracle Net Managerを使用してリスナーのプロトコル・アドレスを備えた
listener.oraファイルを構成します。 -
データベースで、データベース初期化パラメータ・ファイルのLOCAL_LISTENERパラメータをローカル・リスナーの別名に設定します。たとえば:
ALTER SYSTEM SET LOCAL_LISTENER=listener_sales1;
データベースが共有サーバー接続用に構成されている場合、
LISTENER属性を次のように設定できます。ALTER SYSTEM SET DISPATCHERS="(PROTOCOL=tcp)(LISTENER=listener_sales1)";
-
テキスト・エディタを使用して、データベース・ホストの
tnsnames.oraファイルでLOCAL_LISTENER設定のリスナー名の別名を次のように解決します。listener_sales1= (DESCRIPTION = (ADDRESS = (PROTOCOL=tcp)(HOST=sales-server)(PORT=1421)))
ノート:
-
ローカル・リスナーを登録する場合で、Oracle Connection Managerを使用する場合は、
(DESCRIPTION =や閉じかっこを含めないでください。 -
ネットワーク・サービス名のエントリは、接続記述子のCONNECT_DATAセクションなしでプロトコル・アドレス用に作成できます。
-
関連項目:
-
ALTER SYSTEM文の詳細は、『Oracle Database SQL リファレンス』を参照してください。
親トピック: 動的なサービス登録の構成