sql server 查询正在运行的脚本

select session_id, Text,*

from sys.dm_exec_requests r

cross apply sys.dm_exec_sql_text(sql_handle) t


特别是针对查询正在挂起状态的脚本有帮助。


偶的情况是:sqlserver的一个超大的 bak文件一直删除不掉。原因是有一个自动backup的job在调用时失败了,但这个脚本运行状态一直是挂起,导致后续的自动备份作业全部失败。


解决方案:

用 sp_who2 查出 suspend的进程,然后 kill 进程号也不行。

没办法,通过文首放出的脚本查询一下,有哪些脚本正处于运行状态。发现除自己外没有了,赶紧将服务器的 sql server 服务(services.msc 进去) 重启一下,然后 将之前超大的 bak文件删除,然后 自动备份功能就可以继续欢快的跑了。


(结束)

你可能感兴趣的:(sql server 查询正在运行的脚本)