Anlegen und Zuweisen von Zeitplänen zu AufträgenCreate and Attach Schedules to Jobs

gilt für:  Ja SQL Server  Ja Azure SQL verwaltete Instanz  No Azure Synapse Analytics (SQL DW)  No parallel Data WarehouseAPPLIES TO: YesSQL Server YesAzure SQL Managed Instance NoAzure Synapse Analytics (SQL DW) NoParallel Data Warehouse

Wichtig

In einer verwalteten Azure SQL-Datenbank-Instanz werden die meisten, aber nicht alle, SQL Server-Agent-Features unterstützt.On Azure SQL Database Managed Instance, most, but not all SQL Server Agent features are currently supported. Weitere Informationen finden Sie unter T-SQL-Unterschiede zwischen einer verwalteten Azure SQL-Datenbank-Instanz und SQL Server.See Azure SQL Database Managed Instance T-SQL differences from SQL Server for details.

Zeitpläne für Aufträge des SQL ServerSQL Server -Agents zu erstellen bedeutet, die Bedingung(en) zu definieren, durch die die Ausführung des Auftrags ohne Benutzerinteraktion gestartet wird.Scheduling SQL ServerSQL Server Agent jobs means defining the condition or conditions that cause the job to begin running without user interaction. 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.You can schedule a job to run automatically by creating a new schedule for the job, or by attaching an existing schedule to the job.

Es gibt zwei Möglichkeiten, einen Zeitplan zu erstellen:There are two ways to create a schedule:

  • Erstellen Sie den Zeitplan, während Sie einen Auftrag erstellen.Create the schedule while you are creating a job.

  • Erstellen Sie den Zeitplan im Objekt-Explorer.Create the schedule in Object 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.After a schedule has been created, you can attach that schedule to multiple jobs, even if the schedule was created for a specific job. Sie können auch Zeitpläne von Aufträgen trennen.You can also detach schedules from jobs.

Ein Zeitplan kann zeit- oder ereignisbasiert sein.A schedule can be based upon time or an event. Zum Beispiel können Sie einen Auftrag so planen, dass er zu den folgenden Zeitpunkten ausgeführt wird:For example, you can schedule a job to run at the following times:

  • Ausführung beim Start des SQL ServerSQL Server-Agents.Whenever SQL ServerSQL Server Agent starts.

  • Ausführung, wenn sich die CPU-Auslastung des Computers in einem Bereich befindet, den Sie als Leerlauf definiert haben.Whenever CPU utilization of the computer is at a level you have defined as idle.

  • Einmalige Ausführung zu einem bestimmten Zeitpunkt.One time, at a specific date and time.

  • Auf der Grundlage einer Zeitplanserie.On a recurring schedule.

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.As an alternative to job schedules, you can also create an alert that responds to an event by running a job.

Hinweis

Es kann nur jeweils eine einzige Instanz eines Auftrags ausgeführt werden.Only one instance of the job can be run at a time. Wenn Sie versuchen, einen Auftrag manuell auszuführen, der bereits im Rahmen eines Zeitplans ausgeführt wird, lehnt der SQL ServerSQL Server -Agent die Anforderung ab.If you try to run a job manually while it is running as scheduled, SQL ServerSQL Server Agent refuses the request.

Um zu verhindern, dass ein geplanter Auftrag ausgeführt wird, müssen Sie eine der folgendem Aktionen ausführen:To prevent a scheduled job from running, you must do one of the following:

  • Den Zeitplan deaktivieren.Disable the schedule.

  • Den Auftrag deaktivieren.Disable the job.

  • Den Zeitplan von dem Auftrag trennen.Detach the schedule from the job.

  • Den SQL ServerSQL Server -Agent-Dienst beenden.Stop the SQL ServerSQL Server Agent service.

  • Den Zeitplan löschen.Delete the schedule.

Wenn der Zeitplan nicht aktiviert ist, kann der Auftrag dennoch als Reaktion auf eine Warnung oder durch einen Benutzer manuell ausgeführt werden.If the schedule is not enabled, the job can still run in response to an alert or when a user runs the job manually. Wenn der Auftragszeitplan nicht aktiviert ist, ist der Zeitplan auch für keinen der anderen Aufträge aktiviert, die ihn verwenden.When a job schedule is not enabled, the schedule is not enabled for any job that uses the schedule.

Ein deaktivierter Zeitplan muss explizit erneut aktiviert werden.You must explicitly re-enable a schedule that has been disabled. Beim Bearbeiten eines Zeitplans wird dieser nicht automatisch erneut aktiviert.Editing the schedule does not automatically re-enable the schedule.

Planen von StartdatenScheduling Start Dates

Das Startdatum eines Zeitplans muss größer als oder gleich 19900101 sein.The start date of a schedule must be greater than or equal to 19900101.

Wenn Sie einem Auftrag einen Zeitplan zuweisen, überprüfen Sie das Startdatum, das der Zeitplan für das erstmalige Ausführen des Auftrags verwendet.When you are attaching a schedule to a job, you should review the start date that the schedule uses to run the job for the first time. Das Startdatum hängt von dem Tag und der Uhrzeit ab, zu denen Sie den Zeitplan dem Auftrag zuweisen.The start date depends upon the day and time when you attach the schedule to the job. Sie erstellen z. B. einen Zeitplan, der an jedem zweiten Montag um 8:00 Uhr ausgeführt wird.For example, you create a schedule that runs every other Monday at 8:00 A.M. Wenn Sie einen Auftrag amIf you create a job at 10:00 A.M. Montag, 3. März 2008, um 10:00 Uhr erstellen, ist das Startdatum Montag, 17. März 2008.on Monday, March 3, 2008, the schedule start date is Monday, March 17, 2008. Wenn Sie einen weiteren Auftrag am Dienstag, dem 4. März 2008 erstellen, ist das Startdatum Montag, der 10. März 2008.If you create another job on Tuesday, March 4, 2008, the schedule start date is Monday, March 10, 2008.

Sie können das Startdatum des Zeitplans ändern, nachdem Sie den Zeitplan einem Auftrag zugewiesen haben.You can change the schedule start date after you attach the schedule to a job.

CPU-Leerlauf-ZeitpläneCPU Idle Schedules

Zur maximalen Nutzung der CPU-Ressourcen können Sie eine CPU-Leerlaufbedingung für den SQL ServerSQL Server -Agent definieren.To maximize CPU resources, you can define a CPU idle condition for SQL ServerSQL Server Agent. SQL ServerSQL Server Agent verwendet die CPU-Leerlaufbedingung, um den optimalen Zeitpunkt für die Ausführung von Aufträgen festzustellen.Agent uses the CPU idle condition setting to determine the best time to run jobs. 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.For example, you can schedule a job to rebuild indexes during CPU idle time and slow production periods.

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.Before you define jobs to run during CPU idle time, determine the load on the CPU during normal processing. Dazu können Sie mit SQL Server ProfilerSQL Server Profiler oder mit dem Systemmonitor den Serververkehr überwachen und Statistiken erfassen.To do this, use SQL Server ProfilerSQL Server Profiler or Performance Monitor to monitor server traffic and collect statistics. Anschließend können Sie die zusammengestellten Informationen zum Festlegen des Prozentwertes und der Dauer der CPU-Leerlaufzeit verwenden.You can then use the information you gather to set the CPU idle time percentage and duration.

Definieren Sie die CPU-Leerlaufbedingung als Prozentwert, unter den die CPU-Nutzung für eine bestimmte Dauer absinken muss.Define the CPU idle condition as a percentage below which CPU usage must remain for a specified time. Legen Sie dann die Zeitdauer fest.Next, set the amount of time. Wenn die CPU-Nutzung für die angegebene Zeitdauer unter den angegebenen Prozentwert abfällt, startet der SQL ServerSQL Server -Agent alle Aufträge mit CPU-Leerlaufzeitplänen.When the CPU usage is below the specified percentage for the specified amount of time, SQL ServerSQL Server Agent starts all jobs that have a CPU idle time schedule. Weitere Informationen zur Verwendung von SQL Server ProfilerSQL Server Profiler oder des Systemmonitors zur Überwachung der CPU-Nutzung finden Sie unter Überwachen der CPU-Auslastung.For more information on using SQL Server ProfilerSQL Server Profiler or Performance Monitor to monitor CPU usage, see Monitoring CPU Usage.

BeschreibungDescription ThemaTopic
Beschreibt, wie ein Zeitplan für einen SQL ServerSQL Server -Agent-Auftrag erstellt wird.Describes how to create a schedule for a SQL ServerSQL Server Agent job. Create a ScheduleCreate a Schedule
Beschreibt, wie ein SQL ServerSQL Server -Agent-Auftrag geplant wird.Describes how to schedule a SQL ServerSQL Server Agent job. Planen eines AuftragsSchedule a Job
Erläutert, wie die CPU-Leerlaufbedingung für den Server definiert wird.Explains how to define the CPU idle condition for your server. Festlegen der Leerlaufzeit und Leerlaufdauer der CPU (SQL Server Management Studio)Set CPU Idle Time and Duration (SQL Server Management Studio)

Weitere InformationenSee Also

sp_help_jobschedulesp_help_jobschedule
sysjobschedulessysjobschedules