如何确保只有一个作业实例正在运行?

Jon*_*ica 8 sql-server sql-server-agent jobs sql-server-2014

SQL Server 2014 标准版。

我们有一个运行时间为 20-40 分钟的工作。我们只希望此作业的一个实例运行,但我们不希望运行之间存在巨大差距。

因此,每 60 分钟安排一次并不理想,因为可能会有 30-40 分钟的空闲时间。理想情况下,我们将每 30 分钟安排一次,因为这将使我们达到每 10 分钟运行一次或背靠背运行的理想状态。

在 Windows 操作系统计划任务上,有一些设置可以控制在作业仍在运行时如何处理作业实例化。

如何获得对 SQL Server 的一些控制?我如何达到我的理想(或接近它)?

Aar*_*and 9

SQL Server 代理的工作方式正是您想要的方式 - 如果您每 10 分钟安排一次作业,并且在 11:00 运行 12 分钟,它将在 11:20(11:10 实例)之前再次运行不会启动,因为作业的一个实例已经在运行)。