교착 상태에 대한 알림을 보내는 방법이 있는지 알고 싶습니다. 그렇다면 어떤 쿼리가 필요할 것입니다. SQL Server가 교착 상태를 처리한다는 것을 이해하고 있으며 관련 쿼리에 대한 정보를 원합니다.
장기 실행 쿼리를 결정하기 위해 다음을 발견했습니다.
SELECT
creation_time
,last_execution_time
,total_physical_reads
,total_logical_reads
,total_logical_writes
, execution_count
, total_worker_time
, total_elapsed_time
, total_elapsed_time / execution_count avg_elapsed_time
,SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
((CASE statement_end_offset
WHEN -1 THEN DATALENGTH(st.text)
ELSE qs.statement_end_offset END
- qs.statement_start_offset)/2) + 1) AS statement_text
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) st
where total_elapsed_time >= 300000000 --5 min
ORDER BY total_elapsed_time / execution_count DESC;
위의 방법이 올바른지 알고 싶습니다. 또는 표시된대로 5 분 동안 특정 간격보다 오래 걸리는 쿼리를 결정하는 더 좋은 방법이 있습니까?
감사