sys.tcp_endpoints (Transact-SQL)
システム内の各 TCP エンドポイントごとに 1 行のデータを保持します。sys.tcp_endpoints で記述されるエンドポイントでは、接続権限を許可したり取り消すためのオブジェクトが提供されます。ポートおよび IP アドレスに関して表示される情報は、プロトコルの構成に使用されるものではなく、実際のプロトコルの構成と一致しない場合もあります。プロトコルを表示および構成するには、SQL Server 構成マネージャーを使用してください。
列名 |
データ型 |
説明 |
---|---|---|
<継承される列> |
sys.endpoints から列を継承します。 |
|
port |
int |
エンドポイントがリッスンするポート番号です。NULL 値は許可されません。 動的ポートの場合は 0 を返します。 |
is_dynamic_port |
bit |
1 = ポート番号が動的に割り当てられました。 NULL 値は許可されません。 |
ip_address |
nvarchar(45) |
LISTENER_IP 句で指定されたリスナーの IP アドレスです。NULL 値が許可されます。 |
解説
次のクエリを実行して、エンドポイントおよび接続に関する情報を収集します。現在の接続または TCP 接続を使用しないエンドポイントは、NULL 値として表示されます。現在の接続に関する情報を返すには、WHERE 句を使用した WHERE des.session_id = @@SPID を追加します。
SELECT des.login_name, des.host_name, program_name, dec.net_transport, des.login_time,
e.name AS endpoint_name, e.protocol_desc, e.state_desc, e.is_admin_endpoint,
t.port, t.is_dynamic_port, dec.local_net_address, dec.local_tcp_port
FROM sys.endpoints AS e
LEFT JOIN sys.tcp_endpoints AS t
ON e.endpoint_id = t.endpoint_id
LEFT JOIN sys.dm_exec_sessions AS des
ON e.endpoint_id = des.endpoint_id
LEFT JOIN sys.dm_exec_connections AS dec
ON des.session_id = dec.session_id;
権限
SQL Server 2005 以降のバージョンでは、カタログ ビューでのメタデータの表示が、ユーザーが所有しているかそのユーザーが権限を許可されている、セキュリティ保護可能なメタデータに制限されます。詳細については、「メタデータ表示の構成」を参照してください。