小编典典

截止日期为空的作业意味着什么?

sql

我使用以下SQL列出了没有停止日期的所有作业。我以为我可以用它来找到所有活跃的工作。我注意到的是,此表中有许多作业,且stop_execution_date为空。此表中多次重复某些相同的作业(相同的job_id)。

select job.*, activity.*
from msdb.dbo.sysjobs_view job
inner join msdb.dbo.sysjobactivity activity
on (job.job_id = activity.job_id)
where run_Requested_date is not null and stop_execution_date is null

当我EXEC msdb.dbo.sp_help_job在这些作业上运行时,我看到它们的当前执行状态是空闲的。

这些工作代表什么?如果未正确杀死工作,这是行为吗?


阅读 251

收藏
2021-03-23

共1个答案

小编典典

每次启动SQLAgent时,它将在syssessions中放置一个新行,随后运行的任何作业都将在sysjobactivity中获得该session_id。对于您的停止日期为空的作业,我猜想它们不是针对“当前”会话的,这意味着当代理停止时它们仍在运行。

2021-03-23