Beim Planen von Jobs in einer Datenbank ist es wichtig, ihren Status für verschiedene Zwecke überwachen zu können. In diesem Artikel werden drei Schlüsselfragen im Zusammenhang mit dem Jobstatus behandelt:
Um eine Liste aller für die zukünftige Ausführung geplanten Jobs anzuzeigen, verwenden Sie die folgende Abfrage:
SELECT job.name, job.job_id, job.originating_server, activity.run_requested_date, DATEDIFF(SECOND, activity.run_requested_date, GETDATE()) AS Elapsed FROM msdb.dbo.sysjobs_view job JOIN msdb.dbo.sysjobactivity activity ON job.job_id = activity.job_id WHERE activity.run_requested_date > GETDATE();
Um die Liste der aktuell ausgeführten Jobs anzuzeigen, führen Sie die folgende Abfrage aus:
SELECT JOB_ID, NAME, START_TIME, TIME_RUNNING, [STATUS], AGENT_NAME FROM [MSDB].[dbo].[sysjobs] WHERE [STATUS] = 2 AND TIME_RUNNING > 0;
Um festzustellen, ob ein Auftrag erfolgreich abgeschlossen wurde oder ein Fehler aufgetreten ist, verwenden Sie diese Abfrage:
SELECT RUN_REQUESTED_DATE, RUN_START_DATE, RUN_COMPLETION_DATE, ERROR_MESSAGE FROM [MSDB].[dbo].[sysjobhistory] ORDER BY RUN_REQUESTED_DATE DESC;
Das Feld RUN_COMPLETION_DATE gibt die Abschlusszeit des Auftrags an, während das Feld ERROR_MESSAGE die Abschlusszeit des Auftrags anzeigt stellt alle während der Ausführung aufgetretenen Fehlermeldungen bereit.
Das obige ist der detaillierte Inhalt vonWie kann ich den Status meiner geplanten SQL Server-Jobs überwachen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!