6

SQL Server에서 현재 연결 풀 크기를 확인할 수있는 방법이 있습니까? 최대 연결 풀 크기는 아니지만 현재 풀 크기를 말합니다. 최대 풀 크기가 100이고 연결이 49 개 열려 있다고 가정 할 때 51 개가 사용되거나 49 개가 사용되었습니다.SQL Server의 현재 풀 크기를 확인하는 방법

그런 검색어가 있습니까?

+0

Perf 카운터라고 생각합니다. 좋은 질문. – usr

답변

4

이렇게 많은 것들이 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 

이렇게하면 로그인과 각 호스트 및 앱에서 연결을 집계합니다. 이렇게하면 현재 연결이 풀링되는 방법에 대한 아이디어를 얻을 수 있습니다. 손에서 최대 금액을 알고 있다면, 그로부터 연결을 뺄 수 있으며 각 풀에 남아있는 연결 수를 줄 수 있습니다.

2

이 작업을 수행하려면 ADO.Net에서 NumberOfActiveConnections 성능 카운터를 사용하는 것이 좋습니다 (해당 옵션이있는 경우). 특정 카운터에 대한이 기사 회담 : 당신이 그것을 가능하게하는 몇 가지 설정을 추가해야합니다 있도록

http://msdn.microsoft.com/en-us/library/ms254503(v=vs.110).aspx

그것은 기본적으로 꺼져. 이는 다음 링크에서 자세히 설명합니다. 다음 링크에는 카운터를 읽을 수있는 몇 가지 샘플 코드가 있습니다. 이 도움이

http://msdn.microsoft.com/en-us/library/ms254503(v=vs.110).aspx#ActivatingOffByDefault

희망!

+0

고마워,이게 내가 원하는거야. – zhiyazw

관련 문제