J'ai plusieurs packages de travail pour chacun, j'ai configuré un travail dans l'agent serveur SQL. Parfois, je devrais courir tous ensemble. Quelle est la meilleure façon de les exécuter tous dans une séquence donnée? Je suis un peu surpris que l'agent de serveur SQL ne puisse pas inclure les travaux comme étapes de travail à exécuter. J'ai essayé
sql-server-2008
nojetlag
la source
la source
Réponses:
Il existe des outils tiers qui vous permettront de le faire, si vous n'avez pas le temps de la courbe d'apprentissage ou l'expertise existante pour utiliser SSIS. Avertissement: je travaille pour l'une de ces sociétés. Consultez le gestionnaire d'événements de SQL Sentry - il gère les travaux SQL Server (y compris les packages SSIS), les tâches planifiées Windows et même les travaux Oracle. Voici les fonctionnalités de SQL Server (y compris le chaînage et la mise en file d'attente):
http://sqlsentry.net/event-manager/sql-server-enterprise-features.asp
Malheureusement, je ne pense pas que vous pourrez utiliser SQL Agent seul pour chaîner plusieurs travaux. La méthode sp_start_job suggérée par Marian lance des travaux de manière asynchrone; vous ne pouvez pas attendre qu'ils se terminent avant de passer à la commande suivante ou à l'étape suivante.
la source
L'Agent SQL n'est pas considéré comme une "classe d'entreprise" en tant que planificateur de travaux. Il manque beaucoup de fonctionnalités que vous finissez par avoir à vous construire. Un tel exemple serait les dépendances. En conséquence, vous êtes obligé de mettre la plupart de cette logique dans des packages SSIS. Pas nécessairement une mauvaise chose ... juste une douleur à construire et à gérer soi-même.
Donc, c'est ma réponse, créez un package SSIS et utilisez des commandes t-sql pour appeler les travaux de l'Agent SQL comme vous le souhaitez. Assurez-vous que vos exigences et vos scénarios sont clairement définis. Vous ne voudrez peut-être pas que plusieurs travaux atteignent les mêmes tables en même temps, par exemple.
HTH
la source
Vous devriez essayer d'utiliser un script T-SQL dans les étapes de vos travaux, en utilisant la procédure stockée système sp_start_job . Il vous permettra de chaîner le nombre d'emplois que vous souhaitez.
la source