Paramétrage des connexions et des valeurs au moment de l’exécution à l’aide de variables d’environnement SSIS

Bonjour

Dans Ce post j’explique comment paramétrer les chaînes de connexion au moment de l’exécution à l’aide de variables d’environnement SSIS

il s’agit d’une installation  qui rendent vos projets SSIS très portables et facilite la gestion des valeurs dynamiques qui changent régulièrement.

Ce ci est Applicable à partir de SQL Server 2012 ou 2014. Les captures d’écran de SQL Server 2014

C’est Quoi les variables d’environnement SSIS?

Les variables d’environnement SSIS fournissent un mécanisme permettant de définir des valeurs au moment de l’exécution d’un package. Cette fonctionnalité est utile pour n’importe quel nombre de choses, souvent pour spécifier des valeurs différentes entre les environnements de développement, d’assurance qualité et de production

Ci joint la Procédure d’utilisation des variables d’environnement SSIS pour paramétrer les chaînes de connexion et les valeurs lors de l’exécution du package

Étape 1: créer des paramètres et associer des expressions aux paramètres (SSDT)
La première chose à faire est de déterminer les éléments du paquet que vous souhaitez pouvoir modifier lors de l’exécution. Ou, en d’autres termes, ce qui peut avoir besoin d’être changé par le DBA ou l’administrateur système sans que le développeur SSIS ait besoin de faire un changement dans SSDT et de redéployer le paquet

Dans l’exemple ci-dessous, j’ai 2 paramètres au niveau du projet qui signifient une définition de deux chaines de connexion

Sans titre

 

Étape 2: paramétrer les chaînes de connexion (SSDT)
Notez qu’il existe plusieurs façons de gérer les modifications apportées aux chaînes de connexion lors de la migration de Dev vers  Production. Cela décrit une façon de gérer les connexions en les regroupant avec des paramètres.

Je m’assure que toutes les connexions sont au niveau du projet (pas au niveau du paquet) et ensuite j’aime paramétrer chacune de mes chaînes de connexion:

Sans titre

Dans cet exemple, j’ai paramétré la chaîne de connexion elle-même. Vous pouvez paramétrer des propriétés individuelles comme le nom du serveur, le nom d’utilisateurle catalogue, si vous préférez. Cette chaîne de connexion utilise l’authentification Windows, donc elle n’est pas configurée sur sensible

Sans titre

Étape 3: Déployer le projet dans le catalogue SSIS
Pour le déploiement sur Dev, j’ai l’habitude de cliquer avec le bouton droit sur le projet dans SSDT et de le déployer dans le catalogue à partir de là.

Sans titre.png

Étape 4: Créer un environnement et configurer chaque variable (SSMS)                            Une fois que vous avez déployé votre projet dans le catalogue SSIS, vous pouvez le voir dans SQL Server Management Studio SSMS. Copiez et collez le nom et la valeur de chaque paramètre de la fenêtre des paramètres SSDT dans la fenêtre de la variable d’environnement SSIS (remarque: j’ai tendance à utiliser un préfixe EV mais ce n’est qu’une préférence personnelle). Modifiez l’une des valeurs si différentes sur le serveur que celles utilisées dans SSDT

Sans titre

Sans titre

Ensuite, nous voulons créer un nouvel environnement SSIS (en supposant qu’il n’existe pas déjà). Les environnements sont habituellement appelés Dev Prod, ce genre de chose, mais ils pourraient bien sûr être utilisés différemment dans certaines situations.

Pour configurer de nouvelles variables dans l’environnement SSIS, vous devez avoir SSDT ouvert ainsi que SSMS. Copiez et collez le nom et la valeur de chaque paramètre de la fenêtre des paramètres SSDT dans la fenêtre de la variable d’environnement SSIS (remarque: j’ai tendance à utiliser un préfixe EV mais ce n’est qu’une préférence personnelle). Modifiez l’une des valeurs si différentes sur le serveur que celles utilisées dans SSDT

Sans titre

Sans titre

Étape 5: Configurer chaque projet (SSMS)

À ce stade, nous avons un environnement SSIS disponible avec des variables spécifiées qui coïncident avec nos paramètres. Nous sommes maintenant prêts à faire savoir au projet que l’environnement existe (et lequel utiliser, s’il y a plusieurs environnements sur le même serveur)

Sans titre

Sans titre

Sans titre.png

Sur la page des paramètres, nous pouvons associer chaque paramètre du projet à la variable d’environnement configurée. Dans cet exemple, j’ai conservé la portée au niveau du projet, mais vous pouvez les définir au niveau du package individuel, le cas échéant.

Sans titre

Étape 6: Exécution dans SSMS via le catalogue (SSMS)
À ce stade, tout est mis en place. Faisons-le dans SSMS pour voir si cela fonctionne

Sans titre

Sans titre

Sans titre

 

Étape 7: Créer un travail d’agent et associer un travail à l’environnement (SSMS)

Notre dernière étape consiste à configurer un travail d’agent pour exécuter le package sur une planification

Sans titre.png

Sans titre

Notez que vous pouvez également spécifier une valeur de paramètre directement dans le travail de l’agent. Dans la plupart des cas, je ne ferais pas cela car cela pourrait être déroutant si différent de la variable d’environnement ou de la configuration du projet, mais c’est une bonne flexibilité à utiliser avec prudence.