programing

가장 느린 쿼리를 찾는 방법

i4 2023. 8. 14. 22:27
반응형

가장 느린 쿼리를 찾는 방법

SQL Server 2005 Profiler를 사용하여 가장 느린 쿼리 및 저장 프로시저를 찾기 위해 추적하는 이벤트, 열 및 필터는 무엇입니까?

느린 속도 = N초보다 큼(인수를 위해 10초).

SQL 2005에서는 관리 보기를 사용하여 실행 속도가 느린 쿼리를 찾을 수 있습니다.SQL 서버 성능에서 얼마 에 찾은 좋은 스크립트를 사용하면 시작하는 데 도움이 됩니다. 먼저 성능이 가장 느린 데이터를 나열합니다.

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
ORDER BY total_elapsed_time / execution_count DESC;

프로파일러를 사용하기 전에 기본 제공 사용 보고서를 확인합니다.데이터베이스, 보고서, 표준 보고서를 마우스 오른쪽 단추로 클릭한 다음 개체 실행 통계를 클릭합니다.

현재 캐시된 실행 계획과 리소스 양 및 실행된 횟수가 나열됩니다.이것은 일반적으로 서버를 사용 중으로 유지하는 원인에 대해 매우 유용한 정보를 제공합니다.

기간 열이 저를 대신하지만 가끔 읽기와 쓰기 열도 봅니다.

TSQL:StmtCompleted 필터를 사용하여 원시 쿼리를 가져옵니다.여기에 저장 프로시저와 같은 다른 프로시저를 추가할 수도 있지만 tsql은 확인해야 하는 '기준'입니다.MSDN 기사에서 말하는 것처럼

"저장 프로시저의 실행은 SP:Starting, SP:StmtStarting, SP:StmtCompleted 및 SP:Completed 이벤트 클래스와 모든 TSQL 이벤트 클래스를 통해 모니터링할 수 있습니다."

언급URL : https://stackoverflow.com/questions/820219/how-to-find-slowest-queries

반응형