都内で働くSEの技術的なひとりごと / Technical soliloquy of System Engineer working in Tokyo

都内でサラリーマンやってます。SQL Server を中心とした (2023年からは Azure も。) マイクロソフト系(たまに、OSS系などマイクロソフト以外の技術も...)の技術的なことについて書いています。日々の仕事の中で、気になったことを技術要素関係なく気まぐれに選んでいるので記事内容は開発言語、インフラ等ばらばらです。なお、当ブログで発信、発言は私個人のものであり、所属する組織、企業、団体等とは何のかかわりもございません。ブログの内容もきちんと検証して使用してください。英語の勉強のため、英語の

接続元からの接続数をチェックしてみる

今回やることを説明してみる

 各接続元からの接続数をチェックするクエリを作成します。

使用する環境を説明してみる

 My Lenovo with SQL Server 2014 です。

試してみる

 下記のクエリを SQL Server Management Studio で実行します。

SELECT [接続元IPアドレス] = ec.client_net_address,
       [接続元ポート] =ec.client_tcp_port, 
       [接続プログラム] =es.program_name,
       [接続インターフェース] = es.client_interface_name, 
       [ホスト名] =es.host_name, 
       [ログイン名] =es.login_name,
       [接続数] = COUNT(*)
FROM sys.dm_exec_sessions AS es  
INNER JOIN sys.dm_exec_connections AS ec  
ON es.session_id = ec.session_id 
    GROUP BY ec.client_net_address, 
	     ec.client_tcp_port,
	     es.program_name,
             es.client_interface_name,
             es.host_name, 
             es.login_name

f:id:koogucc11:20150204215851p:plain
 
 各接続元からの接続数とか色々把握することができます。あ、下記のようにしないといけませんね。

SELECT [接続元IPアドレス] = ec.client_net_address,
       [接続元ポート] =ec.client_tcp_port, 
       [接続プログラム] =es.program_name,
       [接続インターフェース] = es.client_interface_name, 
       [ホスト名] =es.host_name, 
       [ログイン名] =es.login_name,
       [接続数] = COUNT(*)
FROM sys.dm_exec_sessions AS es  
INNER JOIN sys.dm_exec_connections AS ec  
ON es.session_id = ec.session_id 
    GROUP BY ec.client_net_address, 
	     ec.client_tcp_port,
	     es.program_name,
             es.client_interface_name,
             es.host_name, 
             es.login_name OPTION(RECOMPILE)

 最近記事書いたばっかりですね。

こんな時、RECOMPILE したほうがいいよねと思って記事書いてみた - 都内で働くSEの技術的なひとりごと

終わりに何か言ってみる

 まだまだクエリ作成は続く....

SQL Server 2014: Ein Blick in die Datenzukunft (shortcuts 113) (German Edition)

SQL Server 2014: Ein Blick in die Datenzukunft (shortcuts 113) (German Edition)