Anlegen und Zuweisen von Zeitplänen zu Aufträgen

Gilt für:SQL ServerAzure SQL Managed Instance

Wichtig

In Azure SQL Managed Instance werden derzeit die meisten, aber nicht alle, SQL Server-Agent-Features unterstützt. Details dazu finden Sie unter T-SQL-Unterschiede zwischen Azure SQL Managed Instance und SQL Server.

Zeitpläne für Aufträge des SQL Server -Agents zu erstellen bedeutet, die Bedingung(en) zu definieren, durch die die Ausführung des Auftrags ohne Benutzerinteraktion gestartet wird. Sie können einen Auftrag so planen, dass er automatisch ausgeführt wird, indem Sie einen neuen Zeitplan für den Auftrag erstellen oder indem Sie dem Auftrag einen vorhandenen Zeitplan zuweisen.

Es gibt zwei Möglichkeiten, einen Zeitplan zu erstellen:

  • Erstellen Sie den Zeitplan, während Sie einen Auftrag erstellen.

  • Erstellen Sie den Zeitplan im Objekt-Explorer.

Nach dem Erstellen eines Zeitplans können Sie ihn mehreren Aufträgen zuweisen, auch wenn der Zeitplan für einen bestimmten Auftrag erstellt wurde. Sie können auch Zeitpläne von Aufträgen trennen.

Warnung

Das Aktualisieren eines Zeitplans wirkt sich auf alle Aufträge aus, die an den Zeitplan angefügt sind. Wenn Sie den Zeitplan einzelner Aufträge steuern möchten, müssen Sie für jeden Auftrag ein separates Zeitplanobjekt erstellen.

Ein Zeitplan kann zeit- oder ereignisbasiert sein. Zum Beispiel können Sie einen Auftrag so planen, dass er zu den folgenden Zeitpunkten ausgeführt wird:

  • Ausführung beim Start des SQL Server-Agents.

  • Ausführung, wenn sich die CPU-Auslastung des Computers in einem Bereich befindet, den Sie als Leerlauf definiert haben.

  • Einmalige Ausführung zu einem bestimmten Zeitpunkt.

  • Auf der Grundlage einer Zeitplanserie.

Als Alternative zu Auftragszeitplänen können Sie auch eine Warnung erstellen, durch die in Reaktion auf ein Ereignis ein bestimmter Auftrag ausgeführt wird.

Hinweis

Es kann nur jeweils eine einzige Instanz eines Auftrags ausgeführt werden. Wenn Sie versuchen, einen Auftrag manuell auszuführen, der bereits im Rahmen eines Zeitplans ausgeführt wird, lehnt der SQL Server -Agent die Anforderung ab.

Um zu verhindern, dass ein geplanter Auftrag ausgeführt wird, müssen Sie eine der folgendem Aktionen ausführen:

  • Den Zeitplan deaktivieren.

  • Den Auftrag deaktivieren.

  • Den Zeitplan von dem Auftrag trennen.

  • Den SQL Server -Agent-Dienst beenden.

  • Den Zeitplan löschen.

Wenn der Zeitplan nicht aktiviert ist, kann der Auftrag dennoch als Reaktion auf eine Warnung oder durch einen Benutzer manuell ausgeführt werden. Wenn der Auftragszeitplan nicht aktiviert ist, ist der Zeitplan auch für keinen der anderen Aufträge aktiviert, die ihn verwenden.

Ein deaktivierter Zeitplan muss explizit erneut aktiviert werden. Beim Bearbeiten eines Zeitplans wird dieser nicht automatisch erneut aktiviert.

Planen von Startdaten

Das Startdatum eines Zeitplans muss größer als oder gleich 19900101 sein.

Wenn Sie einem Auftrag einen Zeitplan zuweisen, überprüfen Sie das Startdatum, das der Zeitplan für das erstmalige Ausführen des Auftrags verwendet. Das Startdatum hängt von dem Tag und der Uhrzeit ab, zu denen Sie den Zeitplan dem Auftrag zuweisen. Sie erstellen beispielsweise einen Zeitplan, der jeden zweiten Montag um 8:00 Uhr ausgeführt wird. Wenn Sie am Montag, dem 3. März 2008, um 10:00 Uhr einen Auftrag erstellen, ist der Starttermin Montag, der 17. März 2008. Wenn Sie einen weiteren Auftrag am Dienstag, dem 4. März 2008 erstellen, ist das Startdatum Montag, der 10. März 2008.

Sie können das Startdatum des Zeitplans ändern, nachdem Sie den Zeitplan einem Auftrag zugewiesen haben.

CPU-Leerlauf-Zeitpläne

Zur maximalen Nutzung der CPU-Ressourcen können Sie eine CPU-Leerlaufbedingung für den SQL Server -Agent definieren. SQL Server Agent verwendet die CPU-Leerlaufbedingung, um den optimalen Zeitpunkt für die Ausführung von Aufträgen festzustellen. So können Sie beispielsweise einen Zeitplan für einen Auftrag zur Neuerstellung von Indizes erstellen, der während der CPU-Leerlaufzeit und zu Zeiten mit geringer Produktion eintritt.

Bevor Sie Aufträge definieren, die während der CPU-Leerlaufzeit ausgeführt werden sollen, müssen Sie die CPU-Auslastung während der normalen Verarbeitung ermitteln. Dazu können Sie mit SQL Server Profiler oder mit dem Systemmonitor den Serververkehr überwachen und Statistiken erfassen. Anschließend können Sie die zusammengestellten Informationen zum Festlegen des Prozentwertes und der Dauer der CPU-Leerlaufzeit verwenden.

Definieren Sie die CPU-Leerlaufbedingung als Prozentwert, unter den die CPU-Nutzung für eine bestimmte Dauer absinken muss. Legen Sie dann die Zeitdauer fest. Wenn die CPU-Nutzung für die angegebene Zeitdauer unter den angegebenen Prozentwert abfällt, startet der SQL Server -Agent alle Aufträge mit CPU-Leerlaufzeitplänen. Weitere Informationen zur Verwendung von SQL Server Profiler oder des Systemmonitors zur Überwachung der CPU-Nutzung finden Sie unter Überwachen der CPU-Auslastung.

BESCHREIBUNG Thema
Beschreibt, wie ein Zeitplan für einen SQL Server -Agent-Auftrag erstellt wird. Create a Schedule
Beschreibt, wie ein SQL Server -Agent-Auftrag geplant wird. Planen eines Auftrags
Erläutert, wie die CPU-Leerlaufbedingung für den Server definiert wird. Festlegen der Leerlaufzeit und Leerlaufdauer der CPU (SQL Server Management Studio)

Weitere Informationen

sp_help_jobschedule
sysjobschedules