Comment surveiller l'état des tâches planifiées dans SQL Server
Lors de l'exécution de procédures stockées qui planifient des tâches, il est crucial de surveiller la progression de ces travaux pour garantir leur achèvement et leur réussite dans les délais. Cet article vous guidera à travers les étapes permettant de déterminer l'état des tâches planifiées dans SQL Server :
Liste des tâches planifiées n'ayant pas encore démarré
SELECT name, schedule_next_run FROM sysjobs_view WHERE next_run_date > GETDATE()
Liste des tâches en cours d'exécution
SELECT job.name, job_id, activity.run_requested_date FROM msdb.dbo.sysjobs_view job JOIN msdb.dbo.sysjobactivity activity ON job.job_id = activity.job_id WHERE DATEADD(HOUR, -1, GETDATE()) < activity.run_requested_date AND activity.run_status <> 2
Achèvement du travail Statut
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 JOIN msdb.dbo.syssessions sess ON sess.session_id = activity.session_id JOIN ( SELECT MAX( agent_start_date ) AS max_agent_start_date FROM msdb.dbo.syssessions ) sess_max ON sess.agent_start_date = sess_max.max_agent_start_date WHERE run_requested_date IS NOT NULL AND stop_execution_date IS NULL
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!