170 DBMS_TNS
DBMS_TNSパッケージは、TNS名を解決し、対応するOracle Net8接続文字列を戻すためのRESOLVE_TNSNAMEファンクションを提供します。
この章のトピックは、次のとおりです:
170.1 DBMS_TNSの概要
DBMS_TNSパッケージには、RESOLVE_TNSNAMEという1つのファンクションが含まれます。これは、sqlnet.oraファイルのnames.directory_pathパラメータに定義されている構成済ソースから解決された接続文字列を戻します。
このパッケージのRESOLVE_TNSNAMEファンクションは、相互接続されたデータベースの識別および分散データベース間のシステム変更番号(SCN)フローのトレースに役立ちます。
参照:
-
データベース・リンク情報の検索の詳細は、『Oracle Database管理者ガイド』を参照してください。
-
ALL_DB_LINKSデータ・ディクショナリ・ビューの詳細は、『Oracle Databaseリファレンス』を参照してください。
170.3 DBMS_TNSサブプログラムの要約
この表は、DBMS_TNSサブプログラムを示し、簡単に説明しています。
表170-1DBMS_TNSのパラメータ
| サブプログラム | 説明 |
|---|---|
|
|
170.3.1 RESOLVE_TNSNAMEファンクション
このファンクションは、sqlnet.oraのnames.directory_pathパラメータの指定に従って、任意の構成済ソース(TNS名、Lightweight Directory Access Protocol (LDAP)、Oracle Easy Connectなど)から解決された接続文字列を戻します。
構文
DBMS_TNS.RESOLVE_TNSNAME ( tns_name VARCHAR2) RETURN VARCHAR2;
RESOLVE_TNSNAMEファンクションのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
接続を確立するためのデータベース・アドレス |
使用上のノート
-
データベース管理者およびシステム管理ツールは、
DBMS_TNS.RESOLVE_TNSNAMEファンクションを明示的にコールしてtns_nameを解決できます。 -
解決された値は時間とともに変化する可能性があり、このような値も無効になる可能性があるため、この値は格納またはキャッシュしないことをお薦めします。
-
DBMS_TNS.RESOLVE_TNSNAMEファンクションを使用して、ALL_DB_LINKSおよびUSER_DB_LINKSなどの他のデータ・ディクショナリ・ビューによって参照されたTNS名を解決できます。また、これを使用して、tnsnames.oraファイル内の任意のTNS名エントリを検索できます。
例
SELECT DB_LINK, DBMS_TNS.RESOLVE_TNSNAME(HOST) FROM DBA_DB_LINKS;
DB_LINK
--------------------------------------------------------------------------------
DBMS_TNS.RESOLVE_TNSNAME(HOST)
--------------------------------------------------------------------------------
US.EXAMPLE.COM
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=may))(CONNECT_DATA=(SERVICE_NAME=us.example.com)(CID=(PROGRAM=oracle)(HOST=juno)(USER=psmith))
))