如何获得sqlserver数据库中占用高cpu用户的活动内容?
程序员文章站
2024-01-12 11:58:52
...
原文: 点击打开链接 一个死循环,让我的sql数据库的cpu一下到了100%,我不得不花了一些时间,将这个死循环找出来了。。。 [@more@] 1、从微软站点上下载qslice_setup.exe 2、打开Query Analyzer,运行以下语句: declare @a int while (12) begin select @a
原文: 点击打开链接
一个死循环,让我的sql数据库的cpu一下到了100%,我不得不花了一些时间,将这个死循环找出来了。。。
[@more@]1、从微软站点上下载qslice_setup.exe
2、打开Query Analyzer,运行以下语句:
declare @a int
while (1
begin
select @a=1
end
将会发现cpu马上达到100%
3、打开qlice.exe,将发现sqlserver.exe的cpu占用率很高,双击进入,出行sqlserver.exe中具体线程的执行情况
4、活动运行cpu高的那个id,为16进制的,先将他转换为10进制
5、将这个10进制数,作为参数运行以下查询:
select spid from sysprocesses where kpid=1756
6、将这个spid运行的sql导出:
DBCC TRACEON(3604)
DBCC INPUTBUFF(57)
7、杀掉这个spid
kill 57
over