MS SQL2005 How to find the top 50 cpu execution time.
时间:2010-08-27 来源:Darren Xie
Technorati 标签: MS SQL,TOP CPU
最近发生了很苦烦的事情,DB性能急剧下降,MES中所有的提交操作频频超时,当然排除了种种原因之外,数据库才是真正的问题所在,这个需要DBA处理,可是我们的DBA不在,只能杀掉进程.
服务器的CPU占用一直高居不下,想了很多,最后还是想看看是执行什么操作造成?
这次还整出了以下关于DB使用CPU的情况,以做分析,可以看到执行什么SQL语句时用的CPU最多,以进一步优化,好一切从简,以下出代码和图:
SELECT TOP 50 total_worker_time/execution_count AS [Avg CPU Time]
,(SELECT SUBSTRING(text,statement_start_offset/2,(CASE WHEN
statement_end_offset = -1 then LEN(CONVERT(nvarchar(max), text)) * 2
ELSE statement_end_offset end -statement_start_offset)/2) FROM sys.dm_exec_sql_text(sql_handle)) AS query_text, *
FROM sys.dm_exec_query_stats
ORDER BY [Avg CPU Time] DESC
在此写下只是为了记录一下,以防忘记,也同时分享一下,当然用过的人可能很多,但是我是头一次应用.
很久没有写了,不知怎样表达.闪人!
本文原创,转载请注明出处.
相关阅读 更多 +
- 系统休眠文件删除后果 如何删除计算机的休眠文件 2025-04-22
- 站群服务器是什么意思 站群服务器的作用 站群服务器和普通服务器的区别 2025-04-22
- jQuery插件有何作用 jQuery插件的使用方法 2025-04-22
- jQuery插件有哪些种类 简单的jQuery插件实例 2025-04-22
-