有没有办法检查sql Server中的当前连接池大小?我不是在讨论最大连接池大小,而是当前池大小.假设最大池大小为100并且有49个连接打开,它现在应该显示51个可用或者可能消耗49个.
那么,有这样的查询吗?
解决方法
这些东西似乎超出了dmv的直接访问范围.我敢肯定有人比我更了解你可以得到更好的答案.
这是我能得到的尽可能接近.
SELECT des.program_name,des.login_name,des.host_name,COUNT(des.session_id) [Connections] FROM sys.dm_exec_sessions des INNER JOIN sys.dm_exec_connections DEC ON des.session_id = DEC.session_id WHERE des.is_user_process = 1 AND des.status != 'running' GROUP BY des.program_name,des.host_name HAVING COUNT(des.session_id) > 2 ORDER BY COUNT(des.session_id) DESC
这将通过登录以及每个主机和应用程序聚合您的连接.这将让您了解当前如何汇集您的连接.如果您知道自己的最大金额,可以从中减去连接数,它可以为您提供每个池中剩余的连接数.