Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So überprüfen Sie die aktuelle Poolgröße von SQL Server

So viel von diesem Zeug scheint außerhalb dessen zu liegen, was direkt von dmvs zugänglich ist. Ich bin sicher, jemand, der besser informiert ist als ich, kann Ihnen bessere Antworten geben.

Das ist so nah wie ich kommen konnte.

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

Dadurch werden Ihre Verbindungen nach Anmeldung und von jedem Host und jeder App aggregiert. Dadurch erhalten Sie eine Vorstellung davon, wie Ihre Verbindungen derzeit gepoolt werden. Wenn Sie Ihren maximalen Betrag sofort kennen, können Sie die Verbindungen davon abziehen und es könnte Ihnen die Anzahl der Verbindungen geben, die in jedem Pool verbleiben.