有没有办法检查 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.login_name
, des.host_name
HAVING COUNT(des.session_id) > 2
ORDER BY COUNT(des.session_id) DESC
这将通过登录以及来自每个主机和应用程序来聚合您的连接。这将使您了解当前如何汇集连接。如果您知道现有的最大数量,则可以从中减去连接数,它可以为您提供每个池中剩余的连接数。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)