クライアントTCPポートに基づくSQL Serverトレース


9

アプリケーションを実行するためにRDPを介してログインするさまざまなユーザーがいるWindowsターミナルサーバーがあります。アプリケーションは、SQL Server 2008 R2インスタンスに対してユーザーごとに1つ以上の接続を作成します。すべてのユーザーは、同じSQLログインを使用して同じデータベースにアクセスします。特定のユーザーのSQLセッションを追跡できるようにしたいのですが、どのSQLセッションがどのユーザーに属しているかを判別する方法が見つかりませんでした。ただし、アプリケーションの各インスタンスが使用しているソースTCPポートを特定できます。

クライアントのTCPポートに基づいてSQLセッションをトレースする方法はありますか?

回答:


10

クライアントのTCPポートに基づいてSQLセッションをトレースする方法はありますか?

はい。sys.dm_exec_connectionsをクエリして、クライアントのTCPポート(列client_tcp_port)からセッションを識別できます。

例えば:

SELECT DEC.session_id
FROM sys.dm_exec_connections AS DEC
WHERE DEC.client_net_address = '192.168.0.100'
AND DEC.client_tcp_port = 63465;
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.