2011-05-25 2 views
1

Sur une boîte SQL héritage 2000 qui est en attente de mise à niveauscript SQL 2000 pour tuer travail Agent si des dépassements

Quelqu'un at-il un script pour tuer/abandonner un emploi dans l'Agent SQL 2000 si elle sur exécute une durée donnée ou chevauche un autre travail d'agent.

Ce nous pose un problème sérieux toutes les quelques semaines un des dépassements d'emploi verrouille alors le travail de réindexation et qui gèle notre 24/7 serveur

Répondre

1

Une solution serait d'ajouter une étape au début du travail avec lequel le chevauchement des tâches de longue durée vérifie si le travail de longue durée est toujours en cours d'exécution et si une commande sp_stop_job est émise.

Vous pouvez obtenir le statut d'exécution actuel d'un travail en utilisant sp_help_job, mais sa sortie n'est pas très facile à manipuler dans une requête.

Différentes méthodes pour contraindre la sortie de sp_help_job dans une table temporaire dans SQL 2000 sont abordées here - vous pouvez également interroger msdb.sysjobhistory pour obtenir les informations d'état d'exécution.

Questions connexes