• MS SQL2005 How to find the top 50 cpu execution time.


    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

     

    在此写下只是为了记录一下,以防忘记,也同时分享一下,当然用过的人可能很多,但是我是头一次应用.

    很久没有写了,不知怎样表达.闪人!

    本文原创,转载请注明出处.

  • 相关阅读:
    bzoj1009
    bzoj1576 3694
    bzoj3143
    bzoj1391
    bzoj2729
    bzoj2653
    bzoj3261
    bzoj2326
    人件
    优秀的产品
  • 原文地址:https://www.cnblogs.com/yiyumeng/p/1810426.html
Copyright © 2020-2023  润新知