2013-11-27 2 views
1

SQL Server에서 SQL 쿼리를 시작하고 끝내는 데 걸리는 일시적인 순간을 어떻게 얻을 수 있습니까? 통계 시간을 설정하면 현재의 datetime에 결과로 나오는 cpu/경과 시간을 추가 할 수있는 방법이 있습니까?SQL Server 쿼리 시작 끝 시간

감사

+1

우리의 무료 도구에 쿼리를 실행하여 실제 실행 계획을 생성 글렌 베리의 스크립트를 사용할 수, [SQL 센트리 계획 탐색기] (http://sqlsentry.net/plan-explorer/). 어떤'SET' 명령도 무시할 필요가 없습니다. 자동으로 완료됩니다. –

+0

dba.stackexchange.com에 속함 – Benjamin

답변

1

당신은 사용할 수

({SP 차단하기 위해) SQL 프로파일 러를 포함하여 1) SQL 추적 : StmtCompleted를 | SP : 열을 CPU 시간, 기간/경과 시간을 다음과와 StmtCompleted}는 모든 쿼리의 시간 종료 & 시작

enter image description here

또는

2) 확장 이벤트 세션 (SQL2008의 +)

을에서 두 경우 모두 이러한 이벤트 (%:StmtCompleted)는 서버 성능에 부정적인 영향을 줄 수 있으므로 사용량이 많은 서버 (프로덕션)에서는이 방법을 사용하지 마십시오. 프로덕션 서버에서 성능 문제가 발생하면 문제가 심각해질 수 있습니다. 당신이 원하는 경우

3) 대신,

SQL2005 + sys.dm_exec_query_stats

SQL2008 + sys.dm_exec_proc_stats

SQL2008 + sys.dm_exec_trigger_stats

예를 사용할 수있는 성능 문제와 그 {쿼리/SQL 모듈을} 감지합니다 :

SELECT TOP(50) ... 
    total_worker_time *1.00/execution_count AS Avg_CPU_time, 
    total_elapsed_time *1.00/execution_count AS Avg_Duration, 
    total_logical_reads *1.00/execution_count AS Avg_LIO_time 
FROM sys.dm_..._stats 
ORDER BY Avg_LIO_time DESC 

당신은 http://sqlserverperformance.wordpress.com/2013/11/15/sql-server-diagnostic-information-queries-for-november-2013/