Planifier un package à l'aide de SQL Server Agent
La procédure suivante fournit les étapes pour automatiser l'exécution d'un package en utilisant une étape de travail de SQL Server Agent pour exécuter le package.
Pour automatiser l'exécution des packages à l'aide de l'Agent SQL Server
Dans SQL Server Management Studio, connectez-vous à l'instance de SQL Server sur laquelle vous voulez créer un travail, ou l'instance contenant le travail auquel vous voulez ajouter une étape.
Développez le nœud de SQL Server Agent dans l'Explorateur d'objets et effectuez l'une des tâches suivantes :
Pour créer un travail, cliquez avec le bouton droit sur Travaux , puis cliquez sur Nouveau travail.
Pour ajouter une étape à un travail existant, développez Travaux, cliquez avec le bouton droit sur le travail, puis cliquez sur Propriétés.
Sur la page Général , si vous créez un nouveau travail, fournissez un nom de travail, sélectionnez un propriétaire et une catégorie de travail, et fournissez, si vous le souhaitez, une description du travail.
Pour rendre le travail disponible pour la planification, sélectionnez Activé.
Pour créer une étape de travail d'un package que vous souhaitez à planifier, cliquez sur Étapes, puis cliquez sur Nouveau.
Pour le type d'étape de travail, sélectionnez Package Integration Services .
Dans la liste Exécuter en tant que , sélectionnez Compte de service SQL Server Agent ou sélectionnez un compte proxy ayant les informations d'identification qui seront utilisées par le travail. Pour plus d'informations sur la création d'un compte proxy, consultez Create a SQL Server Agent Proxy.
En utilisant un compte proxy au lieu du Compte de service SQL Server Agent , vous pouvez résoudre les problèmes courants qui peuvent se produire lors de l'exécution d'un package à l'aide de SQL Server Agent. Pour plus d’informations sur ces problèmes, consultez l’article de la Base de connaissances Microsoft intitulé Un package SSIS n’est pas exécuté lorsque vous appelez le package SSIS à partir d’une étape de travail de SQL Server Agent.
Notes
Si le mot de passe est différent de celui des informations d'identification que le compte proxy utilise, vous devez mettre à jour le mot de passe des informations d'identification. Autrement, l'étape de travail échouera.
Pour plus d’informations sur la configuration du compte de service de l’Agent SQL Server, consultez Définir le compte de démarrage du service pour l’Agent SQL Server (Gestionnaire de configuration SQL Server).
Dans la zone de liste Source du package , cliquez sur la source du package et définissez les options de l'étape de travail.
Le tableau suivant décrit les sources de package possibles.
Source du package Description Catalogue SSIS Packages stockés dans la base de données SSISDB. Les packages sont contenus dans les projets Integration Services déployés sur le serveur Integration Services . SQL Server Packages stockés dans la base de données MSDB. Vous utilisez le service Integration Services pour gérer les packages. Magasin de packages SSIS Packages stockés dans le dossier par défaut sur votre ordinateur. Le dossier par défaut est <lecteur>:\Program files\Microsoft SQL Server\110\DTS\Packages. Vous utilisez le service Integration Services pour gérer les packages.
Remarque : Vous pouvez spécifier un dossier différent ou spécifier des dossiers supplémentaires dans le système de fichiers géré par le service Integration Services, en modifiant le fichier de configuration pour Integration Services. Pour plus d’informations, consultez Configuration du service Integration Services (service SSIS).Système de fichiers Packages stockés dans un dossier sur votre ordinateur local. Les tableaux suivants décrivent les options de configuration disponibles pour l'étape de travail en fonction de la source du package que vous sélectionnez.
Important
Si le package est protégé par mot de passe, lorsque vous cliquez sur l'un des onglets de la page Général de la boîte de dialogue Nouvelle étape de travail , à l'exception de l'onglet Package , vous devez entrer le mot de passe dans la boîte de dialogue Mot de passe du package qui s'affiche. Sinon, le travail de SQL Server Agent n'exécute pas le package.
Source du package : Catalogue SSIS
Onglet Options Package Serveur
Tapez ou sélectionnez le nom de l'instance de serveur de base de données qui héberge le catalogue SSIS.
Lorsque Catalogue SSIS est la source du package, vous pouvez vous connecter au serveur à l'aide d'un compte d'utilisateur Microsoft Windows. SQL Server n'est pas disponible.Package
Cliquez sur le bouton de sélection (...) et sélectionnez un package.
Vous sélectionnez un package dans un dossier sous le nœud Catalogues Integration Services dans l' Explorateur d'objets.Paramètres
Situés sur l'onglet Configuration .Entrez les nouvelles valeurs des paramètres contenus dans le package. Vous pouvez entrer une valeur littérale ou utiliser la valeur contenue dans une variable d'environnement serveur que vous avez déjà mappée au paramètre. ** Important ** Si vous avez mappé plusieurs paramètres et/ou propriétés du gestionnaire de connexions à des variables contenues dans plusieurs environnements, SQL Server Agent affiche un message d’erreur. Pour une exécution données, un package peut s'exécuter uniquement avec les valeurs contenues dans un seul environnement.
Pour entrer la valeur littérale, cliquez sur le bouton de sélection en regard d'un paramètre. La boîte de dialogue Modifier la valeur littérale pour l'exécution s'affiche.
Pour utiliser une variable d'environnement, cliquez sur Environnement puis sélectionner l'environnement qui contient la variable que vous souhaitez utiliser.
L'onglet Paramètres affiche les paramètres que vous avez ajoutés lors de la conception du package, par exemple à l'aide de SQL Server Data Tools (SSDT). L'onglet affiche également les paramètres qui ont été ajoutés au package lors de la conversion du projet Integration Services du modèle de déploiement de package au modèle de déploiement de projet. L' Assistant Conversion de projet Integration Services vous permet de remplacer les configurations du package avec des paramètres.
Pour plus d’informations sur la façon de créer un environnement serveur et de mapper une variable à un paramètre, consultez Créer et mapper un environnement serveur.Gestionnaires de connexions
Situés sur l'onglet Configuration .Modifiez les valeurs des propriétés du gestionnaire de connexions. Par exemple, vous pouvez modifier le nom du serveur.
Les paramètres sont automatiquement générés sur le serveur SSIS pour les propriétés du gestionnaire de connexions.
Pour modifier une valeur de propriété, vous pouvez entrer une valeur littérale ou utiliser la valeur contenue dans une variable d'environnement serveur que vous avez déjà mappée à la propriété du gestionnaire de connexions. ** Important ** Si vous avez mappé plusieurs paramètres et/ou propriétés du gestionnaire de connexions à des variables contenues dans plusieurs environnements, SQL Server Agent affiche un message d’erreur. Pour une exécution données, un package peut s'exécuter uniquement avec les valeurs contenues dans un seul environnement.
Pour entrer la valeur littérale, cliquez sur le bouton de sélection en regard d'un paramètre. La boîte de dialogue Modifier la valeur littérale pour l'exécution s'affiche.
Pour utiliser une variable d'environnement, cliquez sur Environnement puis sélectionner l'environnement qui contient la variable que vous souhaitez utiliser.
Pour plus d’informations sur la façon de créer un environnement serveur et de mapper une variable à une propriété du gestionnaire de connexions, consultez Créer et mapper un environnement serveur.Avancée
Situés sur l'onglet Configuration .Configurez les paramètres supplémentaires suivants pour l'exécution du package.
Remplacements de propriété : cliquez sur Ajouter pour entrer une nouvelle valeur pour une propriété de package, spécifier le chemin de la propriété et indiquer si la valeur de la propriété est sensible. Le serveur Integration Services chiffre les données sensibles. Pour modifier ou supprimer des paramètres de propriété, cliquez sur une ligne dans la zone de priorités Propriété puis cliquez sur Modifier ou sur Supprimer. Notez que l’option Property overrides est destinée aux packages avec des configurations que vous avez mises à niveau à partir d’une version précédente d’Integration Services. Les packages que vous créez à l’aide de SQL Server Integration Services (SSIS) 2014 et que vous déployez sur le serveur Integration Services utilisent des paramètres au lieu de configurations. Vous pouvez trouver le chemin de la propriété en procédant de l’une des façons suivantes :
Copiez le chemin de la propriété à partir du fichier de configuration XML (*.dtsconfig). Le chemin d'accès est répertorié dans la section Configuration du fichier, comme valeur de l'attribut Path. Voici un exemple de chemin d'accès de la propriété MaximumErrorCount.
\Package.Properties[MaximumErrorCount]
Exécutez l’Assistant Configuration du package et copiez les chemins de propriété à partir de la dernière page Fin de l’Assistant . Vous pouvez ensuite quitter l'Assistant.Niveau de journalisation : le niveau de journalisation que vous sélectionnez détermine les informations affichées dans les vues SSISDB et dans les rapports pour le serveur Integration Services. Notez que le niveau de journalisation Performances ou Commentaires sélectionné peut affecter les performances de l’exécution du package. Sélectionnez l’un des niveaux de journalisation suivants pour l’exécution du package :
Aucun : la journalisation est désactivée. Seul l'état d'exécution du package est enregistré.
De base : tous les événements sont consignés, à l’exception des événements personnalisés et de diagnostic. Il s'agit de la valeur par défaut du niveau de journalisation.
Performances : seules les statistiques de performances, ainsi que les événements OnError et OnWarning, sont consignées.
Détail : tous les événements sont consignés, y compris les événements personnalisés et de diagnostic.
Pour plus d’informations, consultez Activer la journalisation des exécutions de package sur le serveur SSIS.Vidage en cas d’erreurs : spécifiez si les fichiers de vidage de débogage sont générés lorsqu’une erreur se produit pendant l’exécution du package.
Les fichiers contiennent des informations sur l'exécution du package qui peuvent vous aider à résoudre les problèmes d'exécution.
Quand vous sélectionnez cette option et qu’une erreur se produit pendant l’exécution, Integration Services crée un fichier .mdmp (fichier binaire) et un fichier .tmp (fichier texte). Par défaut, Integration Services stocke ces fichiers dans le dossier <drive>:\Program Files\Microsoft SQL Server\110\Shared\ErrorDumps.Runtime 32 bits Indiquez s’il faut exécuter le package à l’aide de la version 32 bits de l’utilitaire dtexec sur un ordinateur 64 bits sur lequel la version 64 bits de SQL Server et SQL Server Agent est installée.
Il peut être nécessaire d'exécuter le package à l'aide de la version 32 bits de dtexec si, par exemple, le package utilise un fournisseur OLE DB natif qui n'est pas disponible en version 64 bits. Pour plus d'informations, consultez Considérations 64 bits pour Integration Services.
Par défaut, lorsque vous sélectionnez le type d'étape de travail Package SQL Server Integration Services , SQL Server Agent exécute le package à l'aide de la version de l'utilitaire dtexec qui est appelée automatiquement par le système. Le système appelle la version 32 bits ou 64 bits de l'utilitaire selon le processeur de l'ordinateur, et de la version de SQL Server et de SQL Server Agent qui s'exécute sur l'ordinateur.Source du package : SQL Server, Magasin de packages SSIS ou Système de fichiers
Plusieurs options que vous pouvez définir pour les packages stockées dans SQL Server, le magasin de packages SSIS ou le système de fichiers, correspondent aux options de ligne de commande de l'utilitaire d'invite de commandes
dtexec
. Pour plus d’informations sur l’utilitaire et les options de la ligne de commande, consultez Utilitaire dtexec.Onglet Options Package
Voici les options de l'onglet pour les packages stockés dans SQL Server ou dans le magasin de packages d' SSIS .Serveur
Tapez ou sélectionnez le nom de l'instance de serveur de base de données pour SQL Server ou pour le service Integration Services .Utiliser l'authentification Windows
Sélectionnez cette option pour la connexion au serveur à l'aide d'un compte d'utilisateur Microsoft Windows.Utiliser l’authentification SQL Server
Quand un utilisateur se connecte avec un nom d’accès et un mot de passe spécifiés à partir d’une connexion non autorisée, SQL Server réalise l’authentification en vérifiant si un compte de connexion SQL Server a été défini et si le mot de passe spécifié correspond à celui enregistré précédemment. Si SQL Server ne peut pas trouver le compte de connexion, l'authentification échoue et l'utilisateur reçoit un message d'erreur.Nom d’utilisateur Mot de passe Package
Cliquez sur le bouton de sélection et sélectionnez le package.
Vous sélectionnez un package dans un dossier sous le nœud Packages stockés dans l' Explorateur d'objets.Package
Voici les options de l'onglet pour les packages stockés dans le système de fichiers.Package
Tapez le chemin d'accès complet du fichier de package, ou cliquez sur le bouton pour sélectionner le package.Configurations Ajoutez un fichier de configuration XML pour exécuter le package avec une configuration spécifique. Utilisez une configuration de package pour mettre à jour les valeurs des propriétés du package au moment de l'exécution.
Cette option correspond à l’option /ConfigFile pourdtexec
.
Pour comprendre le fonctionnement de l'application des configurations de package, consultez Package Configurations. Pour plus d'informations sur la création d'un configuration de package, consultez Create Package Configurations.Fichiers de commandes Spécifiez les autres options que vous souhaitez exécuter avec dtexec
, dans un fichier distinct.
Par exemple, vous pouvez inclure un fichier qui contient l’option /Dump errorcode pour générer des fichiers de vidage du débogage quand un ou plusieurs événements spécifiques se produisent pendant l’exécution du package.
Vous pouvez exécuter un package avec des ensembles d'options différents en créant plusieurs fichiers et en spécifiant le fichier approprié à l'aide de l'option Fichiers de commandes .
L’option Fichiers de commande correspond à l’option/CommandFile
pourdtexec
.Data Sources (Sources de données) Affichez les gestionnaires de connexions contenus dans le package. Pour modifier une chaîne de connexion, cliquez sur le gestionnaire de connexions et cliquez sur la chaîne de connexion.
Cette option correspond à l'option/Connection
dedtexec
.Options d'exécution Mettre le package en échec en cas d'avertissements de validation
Indique si un avertissement est considéré une erreur. Si vous sélectionnez cette option et un avertissement se produit pendant la validation, le package échoue pendant la validation. Cette option correspond à l'option/WarnAsError
dedtexec
.
Valider le package sans l'exécuter
Indique si l'exécution du package s'arrête après la phase de validation, sans exécuter effectivement le package. Cette option correspond à l'option/Validate
dedtexec
.
Remplacer la propriété MacConcurrentExecutables
Spécifie le nombre d'exécutables que le package peut exécuter simultanément. La valeur -1 signifie que le package peut exécuter simultanément un nombre maximal de fichiers exécutables égal au nombre total de processeurs sur l'ordinateur exécutant le package, plus deux. Cette option correspond à l'option/MaxConcurrent
dedtexec
.
Activer les points de contrôle de package
Indique si le package utilise des points de contrôle pendant l'exécution du package. Pour plus d'informations, consultez Redémarrer des packages à l'aide de points de contrôle.
Ces options correspondent à l'option/CheckPointing
dedtexec
.
Substituer les options de redémarrage
Indique si une nouvelle valeur est définie pour la propriétéCheckpointUsage
du package. Sélectionnez une valeur dans la zone de liste Option de redémarrage .
Cette option correspond à l'option/Restart
dedtexec
.
Utiliser le runtime 32 bits
Indiquez si le package est exécuté à l’aide de la version 32 bits de l’utilitaire dtexec sur un ordinateur 64 bits contenant une version 64 bits de SQL Server et SQL Server Agent.
Il peut être nécessaire d'exécuter le package à l'aide de la version 32 bits de dtexec si, par exemple, le package utilise un fournisseur OLE DB natif qui n'est pas disponible en version 64 bits. Pour plus d'informations, consultez Considérations 64 bits pour Integration Services.
Par défaut, lorsque vous sélectionnez le type d'étape de travail Package SQL Server Integration Services , SQL Server Agent exécute le package à l'aide de la version de l'utilitaire dtexec qui est appelée automatiquement par le système. Le système appelle la version 32 bits ou 64 bits de l'utilitaire selon le processeur de l'ordinateur, et de la version de SQL Server et de SQL Server Agent qui s'exécute sur l'ordinateur.Logging Associez un fournisseur d'informations à l'exécution du package.
Module fournisseur d'informations SSIS pour les fichiers texte
Écrit les entrées du journal dans des fichiers texte ASCII
Module fournisseur d'informations SSIS pour SQL Server
Écrit les entrées du journal dans la table sysssislog de la base de données MSDB.
Module fournisseur d'informations SSIS pour SQL Server Profiler
Écrit des traces que vous pouvez afficher à l'aide de SQL Server Profiler.
Module fournisseur d'informations SSIS pour le journal d'événements Windows
Écrit des entrées dans le journal Application du journal des événements Windows.
Module fournisseur d'informations SSIS pour les fichiers XML
Écrit des fichiers journaux dans un fichier XML.
Pour le fichier texte, le fichier XML et les fournisseurs d'informations de SQL Server Profiler, sélectionnez les gestionnaires de connexions des fichiers contenus dans le package. Pour le fournisseur d'informations SQL Server , sélectionnez un gestionnaire de connexions OLE DB contenu dans le package.
Cette option correspond à l'option/Logger
dedtexec
.Valeurs définies Substituez un paramètre de propriété du package. Dans la zone Propriétés , entrez des valeurs dans les colonnes Chemin d'accès de la propriété et Valeur . Après avoir entré les valeurs d'une propriété, une ligne vide apparaît dans la zone Propriétés et vous permet d'entrer des valeurs pour une autre propriété.
Pour supprimer une propriété de la zone Propriétés, cliquez sur la ligne puis cliquez sur Supprimer.
Vous pouvez trouver le chemin de la propriété en procédant de l'une des façons suivantes :
Copiez le chemin de la propriété à partir du fichier de configuration XML (*.dtsconfig). Le chemin d'accès est répertorié dans la section Configuration du fichier, comme valeur de l'attribut Path. Voici un exemple de chemin d'accès de la propriété MaximumErrorCount.
\Package.Properties[MaximumErrorCount]
Exécutez l’Assistant Configuration du package et copiez les chemins de propriété à partir de la dernière page Fin de l’Assistant . Vous pouvez ensuite quitter l'Assistant.Vérification Exécuter uniquement les packages signés
Indique si la signature du package est vérifiée. Si le package n'est pas signé ou si la signature n'est pas valide, le package échoue. Cette option correspond à l'option/VerifySigned
dedtexec
.
Vérifier la version du package
Indique si le numéro de build du package est vérifié par rapport au numéro de build entré dans la zone Build en regard de cette option. En cas de non-concordance, le package ne s'exécute pas. Cette option correspond à l'option/VerifyBuild
dedtexec
.
Vérifier l'ID de package
Indique si le GUID du package est valide, en le comparant à l'ID de package entré dans la zone ID du package en regard de cette option. Cette option correspond à l'option/VerifyPackageID
dedtexec
.
Vérifier l'ID de version
Indique si le GUID de la version est valide, en le comparant à l'ID de version entré dans la zone ID de version en regard de cette option. Cette option correspond à l'option/VerifyVersionID
dedtexec
.Ligne de commande Modifiez les options de ligne de commande de l'utilitaire dtexec. Pour plus d'informations sur les options, consultez dtexec Utility.
Conseil : vous pouvez copier la ligne de commande dans une fenêtre d’invite de commandes, ajouterdtexec
et exécuter le package à partir de la ligne de commande. C'est une solution simple pour générer le texte dans la ligne de commande.
Restaurer les options d'origine
Utilisez les options de ligne de commande que vous avez définies sous les onglets Package, Configurations, Fichiers de commandes, Sources de données, Options d’exécution, Journalisation, Valeurs définieset Vérification de la boîte de dialogue Propriétés de travail .
Modifier la commande manuellement
Entrez les options de ligne de commande supplémentaires dans la zone Ligne de commande .
Avant de cliquer sur OK pour enregistrer les modifications apportées à l’étape du travail, vous pouvez supprimer toutes les autres options que vous avez tapées dans la zone Ligne de commande en cliquant sur Restaurer les options d’origine.Cliquez sur OK pour enregistrer les paramètres et fermer la boîte de dialogue Nouvelle étape de travail .
Notes
Pour les packages enregistrés dans le Catalogue SSIS, le bouton OK est désactivé lorsqu'il existe un paramètre de propriété du gestionnaire de connexions, ou un autre paramètre, non résolu. Un paramètre est considéré comme non résolu lorsque vous utilisez une valeur contenue dans une variable d'environnement serveur pour définir le paramètre ou la propriété, et lorsque l'une des conditions suivantes est remplie.
- La case à cocher Environnement sous l'onglet Configuration n'est pas sélectionnée.
- L'environnement serveur qui contient la variable n'est pas sélectionné dans la zone de liste de l'onglet Configuration .
Pour créer une planification pour une étape de travail, cliquez sur Planifications dans le volet Sélectionner une page . Pour plus d'informations sur la manière de configurer une planification, consultez Schedule a Job.
Conseil
Lorsque vous nommez la planification, utilisez un nom unique et un descriptif, pour différencier plus facilement la planification des autres planifications de SQL Server Agent.