数据库server的cpu100%了,如何才能知道是哪个SQL 语句引起的呢?

解决方案 »

  1.   

    开始-程序-Microsoft SQL Server-事件探查器-新跟踪-输入SQL服务器,用户名及密码-运行即可
      

  2.   

    --在耗CPU资源最多的SQL中,去优化!!
      

  3.   

    谢谢各位,经过跟踪,跟踪出来的结果能导成txt 或 excel文件吗?另外我发现有些奇怪的进程占的cpu奇高:
    event class      application name                cpu           reads
    -----------     --------------------          --------      -----------
    audit logout     microsoft .net frameword       6984           828427
    audit logout     .net sqlclient data provider    743492       13009707这些是怎么产生的?
    还有一些sp的cpu的值是700,正常吗?
      

  4.   

    另外这这个值指的是cpu消耗时间吗?
      

  5.   

    这种事件一般可以不用管。 主要关心SQLBatchComplete和RPC Complete这两个事件就行了。
    对,这儿的值是指消耗cpu的时间,单位为毫秒。
    建议你去微软的网站下载Read80Trace.exe这个文件,对分析SQL很有帮助。具体用法请参考 此文章  http://www.microsoft.com/china/msdn/library/data/sqlserver/Profiler.mspx