如果您将SQL Server作业安排为每X分钟运行一次,并且该作业在分钟数结束之前没有完成上一次调用,它是会跳过运行,因为它已经在运行,还是会运行该作业的两个实例并执行相同的步骤?
发布于 2009-05-14 19:11:37
SQL Server代理在开始新的迭代之前检查作业是否已在运行。如果您有一个长时间运行的作业,并且它的计划开始运行,那么它将被跳过,直到下一个时间间隔。
你可以自己试一试。如果您尝试启动一个已经在运行的作业,您将得到一个错误。
发布于 2009-05-14 18:49:19
我非常确定,如果它正在运行,它将跳过它。
发布于 2009-05-14 19:15:22
您使用的是哪个版本的SQL Server?这似乎是一件很容易测试的事情。设置一个包含WAITFOR的作业,该作业将单行插入到表中,并将该作业设置为快速连续运行两次(比WAITFOR延迟短)。
在SQL Server2005中运行此类测试时,它跳过了重叠的运行。
https://stackoverflow.com/questions/865042
复制相似问题