Você está na página 1de 15

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005

par Fleur-Anne BLAIN (fablain.developpez.com)

Date de publication : 01/04/2008 Dernire mise jour : 01/04/2008

Ce tutoriel explique comment automatiser l'excution d'un package SQL Server Integration Services, soit SSIS, avec l'aide d'SQL Server Agent.

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

Introduction I - Prsentation d'SQL Server Agent I-A - A quoi sert SQL Server Agent I-B - Comment dmarrer le service SQL Server Agent ? II - Automatisation de l'excution de notre package SSIS Conclusion Liens utiles Remerciements

-2Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

Introduction
Microsoft SQL Server 2005 est dot d'un outil d'intgration de donnes (d'une source en passant par une transformation optionnelle des donnes, vers une destination) appell SSIS. Il permet de communiquer des donnes de systmes d'information diffrents, ce qui rpond bien aux besoins actuels en terme de systme d'information et de transfert de donnes. Il est trs courant que ce type de traitement soit rptitif, quotidien voire plus, et donc ncessite une automatisation. SSIS coupl SQL Server Agent permettent de raliser ce type d'opration assez aisment. SSIS pour le traitement des donnes et SQL Server Agent pour l'automatisation de ce traitement. Nous allons, partir d'un package SSIS que nous appellerons SSIS_automatisation, procder son dploiement et sa planification. Nous allons dbuter par une prsentation d'SQL Server Agent, son rle, etc. Puis, nous verrons travers notre exemple SSIS_automatisation comment le dployer sur notre MS SQL Server et planifier son excution automatique.

-3Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

I - Prsentation d'SQL Server Agent


Pr-requis :

Notre exemple se base sur l'automatisation de l'excution d'un package SSIS. Vous disposez de toutes les bases ncessaires la pratique de SSIS dans Prsentation de SQL Server Integration Services : SSIS

I-A - A quoi sert SQL Server Agent


L'Agent SQL Server est un service d'SQL Server qui permet de stocker des informations sur des travaux. Ces travaux peuvent tre constitus d'une ou plusieurs tapes ou tches fonction de l'objectif. SQL Server Agent permet l'excution de ces travaux sur demande (manuelle) ou de manire automatique. Il permet entre autres de grer les sauvegardes, les plans de maintenance, les travaux planifis, la surveillance de la base, les alertes administratives, etc. Dans notre cas, il nous permet d'automatiser le traitement de notre package SSIS_automatisation. Ce service demandant beaucoup de ressource, il n'est pas dmarr par dfaut sauf si l'administrateur ou utilisateur a choisi de dmarrer automatiquement le service. Pour pouvoir l'utiliser, il faut donc dmarrer le service.

I-B - Comment dmarrer le service SQL Server Agent ?


Il y a 3 possibilits pour dmarrer le service SQL Server Agent. En fait 2 car la premire consiste mettre en automatique le dmarrage de ce service de faon ce qu'il se lance chaque dmarrage d'SQL Server. Par dfaut ce n'est pas le cas, comme expliqu prcdemment.

Pour un dmarrage automatique :

Pour programmer le dmarrage automatique d'SQL Server Agent, aller dans Dmarrer>Excuter puis saisir services.msc dans la zone de texte comme suit et valider :

Cette action nous ouvrira une nouvelle fentre contenant tous les services dont SQL Server Agent sur lequel nous nous rendons :

-4Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

Ensuite, sur la ligne correspondante SQL Server Agent, cliquer droit pour slectionner Proprits :

Dans les proprits, il nous est possible de dmarrer ce service en manuel, automatique (dbut diffr), automatique ou encore de le dsactiver. Pour le dmarrage automatique, nous choisirons donc automatique et nous validons. Voil notre service se dmarre de manire automatique.

-5Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

Pour un dmarrage manuel, 2 possibilits :

Soit SQL Server Agent est en mode manuel, nous rptons alors l'opration prcdente, sauf qu'il nous suffit de cliquer droit et de slectionner Dmarrer afin de dmarrer le service.

Soit nous utilisons SQL Server Management Studio (en administrateur ou ayant droit). Nous nous connectons au serveur de base de donnes. Dans l'explorateur, nous pouvons voir SQL Server Agent en rouge (le service n'est pas dmarr). Nous cliquons droit sur celui-ci et nous pouvons alors slectionner Dmarrer. SQL Server agent passe alors en vert (le service est dmarr).

Aprs une brve prsentation d'SQL Server Agent et de ses modes de dmarrage, nous allons passer notre objectif principal : l'automatisation du traitement de notre package SSIS_automatisation.

-6Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

II - Automatisation de l'excution de notre package SSIS


Pr-requis :

Avant de pouvoir planifier l'excution d'un package SSIS, il faut le dployer. Si vous ne connaissez pas la dmarche adopter, rendez-vous dans ce tutoriel : Dploiement du package SSIS.

Etape 1 : Dmarrer notre SQL Server 2005

Pour cela, nous excutons la commande net start mssqlserver. Et pour l'arrter, net stop mssqlserver.

Une fentre d'invite de commande apparait/disparait trs rapidement.

Etape 2 : Dmarrer notre SQL Server Agent

Et bien cette tape, nous pouvons reprendre la manire que l'on souhaite, manuelle ou automatique, tant que notre SQL Server Agent est dmarr.

Etape 3 : Connexion avec SQL Server Management Studio Ouvrir SQL Server Management studio, choisir le type de serveur Base de donnes, et remplir les informations ncessaires soit login et mot de passe comme suit :

-7Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

Etape 4 : Cration d'un nouveau Job Pour crer notre nouveau job qui nous permettra de planifier l'excution de notre package SSIS, au niveau de l'arborescence, se placer sur le SQL Server Agent. Cliquer droit et choisir new >Job. Remarque :Notre SQL Server Agent est effectivement dmarr et celui-ci apparat en vert.

Au niveau de l'onglet gnral, nous nommons notre job Job_SSIS-automatisation comme suit :

-8Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

Au niveau de l'onglet steps, nous allons ajouter un nouveau "pas". Il nous faut saisir les informations demandes comme suit, en slectionnant le type d'identification voulue (dans notre cas SQL Server) et choisir le package concernant SSIS_automatisation :

Concernant les autres onglets configurer, je vous laisse le soin de choisir vos options par vous mme car elles sont assez explicites ( options d'excution, contraintes de vrification, etc.).

Ensuite, nous nous rendons au niveau de l'onglet schedules. C'est avec cette option qu'est dtermine la frquence d'excution du package ( par mois, par semaine, par jour ainsi que l'heure d'excution, etc.).

-9Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

Dans notre cas, nous avons dcid que le package s'excuterait tous les jours 2h du matin.

Les onglets alertes et notifications permettent d'amliorer la gestion d'erreurs et de contrler le bon tat d'avancement de l'excution automatique des packages. Il est fortement recommand de les utiliser, ainsi qu'une vrification des journaux d'erreurs au niveau du serveur. En effet, ce n'est pas parce que le traitement est automatis que l'erreur est impossible, en particulier quand celle-ci se produit au niveau du package SSIS lui-mme.

Aprs avoir valid le tout, nous pouvons constater dans l'explorer, que notre nouveau job s'est bien ajout. Notons aussi les diffrents journaux apparaissant et permettant de vrifier la bonne ou mauvaise excution de nos packages entre autres.

- 10 Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

- 11 Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

Conclusion
Ce tutoriel nous permet donc d'avoir un avant-got sur les possibilits d'SQL Server Agent. Il nous simplifie grandement la vie et l'automatisation de package, en particulier SSIS, n'en est que facilite. SSIS coupl SQL Server Agent permet de garder une cohrence dans le systme d'information et de manager les rsultats. Bien-entendu, je vous invite vous pencher davantage sur tout ce qui touche la gestion d'erreurs car paramtrer ce genre de dispositif simplifie la vie et permet surtout un gain de temps.

- 12 Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

Liens utiles
Prsentation de SQL Server Integration Services : SSIS SSIS : Gnrer des fichiers textes partir du contenu d'une colonne

- 13 Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

Remerciements
Je remercie Adrien Artero et Bruno2r pour leurs corrections et remarques constructives.

- 14 Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Automatisation de l'excution d'un package SSIS sur Microsoft SQL Server 2005 par Fleur-Anne BLAIN (fablain.developpez.com)

- 15 Copyright 2008 - Fleur-Anne BLAIN. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' 3 ans de prison et jusqu' 300 000 E de domages et intrts.
http://fablain.developpez.com/tutoriel/automatisation-ssis/

Você também pode gostar