日期:2014-05-18  浏览次数:20621 次

sql2000,进程数过多的问题,如何设置sql2000属性,来定时删除长时间不工作的进程?
用程序都已经退出了,但是sql2000的进程数仍然存在
但是第二天早上来的时候却发现已经没有了

怀疑sql2000是不是有定时清除长时间不工作的进程?
如果有的话,如何设置这个时间?我想把时间缩短一点,让sql2000自动清除长时间不工作的进程

(这里先不考虑如何在应用程序中释放连接的问题)

谢谢

------解决方案--------------------
select spid,last_batch from master.dbo.sysprocesses

spid 进程号
last_batch 该进程最后一次使用的时候

通过这连个字段来判断

kill 掉大于一个小时没使用的进程

declare @sql varchar(1000)
set @sql = ' '
select 'kill ' + spid + '; ' from master.dbo.sysprocesses
where DATEDIFF(HH,last_batch,getDate()) > 1
exec (@sql)