Wie stelle ich sicher, dass nur eine Instanz eines Jobs ausgeführt wird?

7

SQL Server 2014 Standard Edition.

Wir haben einen Job, der zwischen 20 und 40 Minuten dauert. Wir möchten, dass nur eine Instanz dieses Jobs ausgeführt wird, aber wir möchten keine großen Lücken zwischen den Läufen.

Eine Planung alle 60 Minuten ist daher nicht ideal, da es 30-40 tote Minuten geben kann. Idealerweise würden wir es alle 30 Minuten einplanen, da dies uns das Ideal geben würde, entweder alle 10 Minuten oder Rücken an Rücken zu laufen.

Bei einer geplanten Aufgabe unter Windows gibt es Einstellungen, mit denen gesteuert werden kann, wie die Jobinstanziierung behandelt wird, wenn der Job noch ausgeführt wird.

Wie bekomme ich eine Kontrolle über SQL Server? Wie komme ich zu meinem Ideal (oder nahe daran)?

Jonesome stellt Monica wieder her
quelle

Antworten:

8

Die Funktionsweise von SQL Server Agent ist genau so, wie Sie es bereits möchten. Wenn Sie den Job alle 10 Minuten planen und um 11:00 Uhr 12 Minuten lang ausführen, wird er erst um 11:20 Uhr (die 11:10 Instanz) erneut ausgeführt wird nicht gestartet, da bereits eine Instanz des Jobs ausgeführt wurde.

Aaron Bertrand
quelle