반응형
원래는 MSSQL PROFILER 를 이용해서 모니터링 하면서 조회할 수 있지만, 부하를 일으킬 수 있어, 문제가 된다.
쿼리를 이용해서 제일 많은 빈도수 쿼리를 조회할 수 있습니다.
select top 10
db_name(st.dbid) as dbname, cp.objtype,
qs.total_elapsed_time, creation_time, last_execution_time,
qs.execution_count, text
from sys.dm_exec_query_stats qs
cross apply sys.dm_exec_sql_text(qs.plan_handle)st
join sys.dm_exec_cached_plans cp
on qs.plan_handle = cp.plan_handle
where 1=1
--and creation_time >= dateadd(d, -1, getdate())
--and db_name(st.dbid) is not null
--and cp.objtype = 'proc'
--and db_name(st.dbid) = ''
--and text like '%%'
order by execution_count desc;
SELECT TOP 10
deqs.execution_count AS TotalExecutionTime
,OBJECT_NAME(objectid) AS ObjectName
,QueryText = SUBSTRING(
dest.text,
deqs.statement_start_offset/2,
(CASE WHEN deqs.statement_end_offset = -1
THEN len(CONVERT(nvarchar(MAX), dest.text)) * 2
ELSE deqs.statement_end_offset
END - deqs.statement_start_offset)/2)
,DatabaseName = db_name(dest.dbid)
FROM sys.dm_exec_query_stats AS deqs
CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest
ORDER BY deqs.execution_count DESC
반응형
'LINUX > DB' 카테고리의 다른 글
[AWS-RDS] MYSQL you *might* want to use the less safe log_bin_trust_function_creators variable (0) | 2022.10.24 |
---|---|
[MSSQL] (Backup, Restore) Database 진행률 확인 쿼리 (0) | 2022.08.30 |
[MYSQL] 한 서버에서 여러개 mysql 관리 (mysqld_multi) (0) | 2022.05.03 |
[MSSQL] 복구상태일때 퍼센트와 남는 시간 확인하는 방법 (0) | 2021.12.06 |
[MSSQL] 원격지 백업하는 방법 (0) | 2021.12.06 |