Mettre à niveau Integration Services

Si SQL Server 2005 Integration Services (SSIS) ou SQL Server 2008 Integration Services (SSIS) est installé sur votre ordinateur, vous pouvez effectuer une mise à niveau vers SQL Server 2012 Integration Services (SSIS).

Lorsque vous mettez à niveau vers SQL Server 2012 Integration Services (SSIS) sur un ordinateur sur lequel une de ces versions antérieures d'Integration Services est installée, SQL Server 2012 Integration Services (SSIS) est installé côte à côte avec une version antérieure.

Avec cette installation côte à côte, plusieurs versions de l'utilitaire dtexec sont installés. Pour vous assurer que vous exécutez la version appropriée de l'utilitaire, à l'invite de commandes, exécutez l'utilitaire en entrant le chemin d'accès complet (<drive>:\Program Files\Microsoft SQL Server\<version>\DTS\Binn). Pour plus d'informations dtexec, consultez Utilitaire dtexec.

[!REMARQUE]

Dans les versions précédentes de SQL Server, par défaut, lorsque vous installiez SQL Server, tous les utilisateurs du groupe Utilisateurs avaient accès au service Integration Services. Lorsque vous installez SQL Server 2012, les utilisateurs n'ont pas accès au service Integration Services. Ce service est sécurisé par défaut. Une fois SQL Server 2012 installé, l'administrateur SQL Server doit exécuter l'outil de configuration DCOM (Dcomcnfg.exe) pour accorder à des utilisateurs spécifiques l'accès au service Integration Services. Pour plus d'informations, consultez Accorder des autorisations au service Integration Services.

Avant de procéder à la mise à niveau d'Integration Services

Nous vous recommandons d'exécuter le Conseiller de mise à niveau avant d'effectuer la mise à niveau vers SQL Server 2012. Le Conseiller de mise à niveau signale les problèmes que vous pouvez rencontrer si vous migrez des packages existants de Integration Services vers le nouveau format de package que SQL Server 2012 utilise. Pour plus d'informations, consultez Utiliser le Conseiller de mise à niveau pour la préparation des mises à niveau.

[!REMARQUE]

La prise en charge de la migration ou de l'exécution des packages DTS (Data Transformation Services) a été arrêtée dans la version actuelle de SQL Server Integration Services. Les fonctionnalités DTS suivantes ne sont plus disponibles.

  • Runtime DTS ;

  • DTS API ;

  • Assistant Migration de package pour la migration de packages DTS vers la prochaine version de Integration Services ;

  • Prise en charge de la maintenance des packages DTS dans SQL Server Management Studio ;

  • Tâche d'exécution de package DTS 2000 ;

  • analyse du Conseiller de mise à niveau des packages DTS.

Pour plus d'informations sur d'autres fonctionnalités supprimées, consultez Fonctionnalités Integration Services abandonnées dans SQL Server 2012.

Mise à niveau d'Integration Services

Vous pouvez effectuer la mise à niveau au moyen de l'une des méthodes suivantes :

  • Exécutez le programme d'installation de SQL Server 2012 et sélectionnez l'option Mise à niveau de SQL Server 2005, SQL Server 2008 ou SQL Server 2008 R2.

  • Exécutez setup.exe à l'invite de commandes et spécifiez l'option /ACTION=upgrade. Pour plus d'informations, consultez la section « Scripts d'installation de Integration Services » dans Installer SQL Server 2012 à partir de l'invite de commandes.

Vous ne pouvez pas utiliser la mise à niveau pour exécuter les actions suivantes :

  • Reconfigurer une installation existante de Integration Services.

  • Passer d'une version 32 bits à une version 64 bits de SQL Server ou d'une version 64 bits à une version 32 bits.

  • Passer d'une version localisée de SQL Server à une autre version localisée.

Lorsque vous effectuez une mise à niveau, vous pouvez mettre à niveau Integration Services et le moteur de base de données, ou uniquement le moteur de base de données, ou uniquement Integration Services. Si vous mettez à niveau uniquement le moteur de base de données, SQL Server 2005 Integration Services (SSIS) ou SQL Server 2008 Integration Services (SSIS) reste fonctionnel, mais vous n'avez pas les fonctionnalités de SQL Server 2012 Integration Services (SSIS). Si vous mettez uniquement à niveau Integration Services, SQL Server 2012 Integration Services (SSIS) sera totalement fonctionnel, mais uniquement en mesure de stocker des packages dans le système de fichiers, à moins qu'une instance du Moteur de base de données SQL Server 2012 ne soit disponible sur un autre ordinateur.

Mise à niveau d'Integration Services et du moteur de base de données vers SQL Server 2012

Cette section décrit les conséquences liées à l'exécution d'une mise à niveau qui obéit aux critères suivants :

  • Vous mettez à niveau Integration Services et une instance du moteur de base de données vers SQL Server 2012.

  • Integration Services et l'instance du moteur de base de données se trouvent tous deux sur le même ordinateur.

Ce que fait le processus de mise à niveau

Le processus de mise à niveau effectue les tâches suivantes :

  • Installe les fichiers SQL Server 2012 Integration Services (SSIS), ainsi que le service et les outils (Management Studio et Outils de données SQL Server). Lorsque plusieurs instances de SQL Server 2005 ou SQL Server 2008 sont installées sur le même ordinateur, lorsque vous mettez à niveau à partir d'une instance quelconque vers SQL Server 2012, les fichiers, les services et les outils SQL Server 2012 Integration Services (SSIS) sont installés.

  • Met à niveau l'instance du Moteur de base de données SQL Server 2005 ou SQL Server 2008 vers la version SQL Server 2012.

  • Déplace les données des tables système SQL Server 2005 Integration Services (SSIS) ou SQL Server 2008 Integration Services (SSIS) vers les tables système SQL Server 2012 Integration Services (SSIS), comme suit :

    • Déplace les packages sans modification de la table système msdb.dbo.sysdtspackages90 vers la table système msdb.dbo.sysssispackages.

      [!REMARQUE]

      Bien que les données soient déplacées vers une autre table système, la mise à niveau n'effectue pas la migration des packages vers le nouveau format.

    • Déplace les métadonnées de dossier de la table système msdb.sysdtsfolders90 vers la table système msdb.sysssisfolders.

    • Déplace les données du journal de la table système msdb.sysdtslog90 vers la table système msdb.sysssislog.

  • Supprime les tables système msdb.sysdts*90 et les procédures stockées utilisées pour y accéder après avoir déplacé les données vers les nouvelles tables msdb.sysssis*. Toutefois, la mise à niveau remplace la table sysdtslog90 par une vue qui est également nommée sysdtslog90. Cette nouvelle vue sysdtslog90 expose la nouvelle table système msdb.sysssislog. Cela garantit que les rapports basés sur la table du journal continuent à s'exécuter sans interruption.

  • Pour contrôler l'accès aux packages, crée trois nouveaux rôles de base de données fixes : db_ssisadmin, db_ssisltduser et db_ssisoperator. Les rôles SQL Server 2005 Integration Services de db_dtsadmin, db_dtsltduser et db_dtsoperator ne sont pas supprimés, mais deviennent membres des nouveaux rôles correspondants.

  • Si le magasin de packages SSIS (autrement dit, l'emplacement du système de fichiers géré par le service Integration Services) constitue l'emplacement par défaut sous \SQL Server\90 ou \SQL Server\100, ces packages sont déplacés vers le nouvel emplacement par défaut sous \SQL Server\110.

  • Met à jour le fichier de configuration du service Integration Services de sorte qu'il pointe vers l'instance mise à niveau du moteur de base de données.

Ce que ne fait pas le processus de mise à niveau

Le processus de mise à niveau n'effectue pas les tâches suivantes :

  • Ne supprime pas le service SQL Server 2005 Integration Services (SSIS) ou SQL Server 2008 Integration Services (SSIS).

  • N'effectue pas la migration des packages Integration Services existants vers le nouveau format utilisé par SQL Server 2012 pour les packages. Pour plus d'informations sur la migration des packages, consultez Mettre à niveau des packages Integration Services.

  • Ne déplace pas de packages à partir d'emplacements du système de fichiers, autre que l'emplacement par défaut, qui ont été ajoutés au fichier de configuration du service. Si vous avez déjà modifié le fichier de configuration du service de manière à ajouter des dossiers de système de fichiers supplémentaires, les packages stockés dans ces dossiers ne seront pas déplacés à un nouvel endroit.

  • Dans les étapes du travail de l'Agent SQL Server qui appellent l'utilitaire dtexec directement (dtexec.exe), ne met pas à jour le chemin d'accès de système de fichiers pour l'utilitaire dtexec. Vous devez modifier manuellement ces étapes du travail pour mettre à jour le chemin d'accès de système de fichiers en vue de spécifier l'emplacement SQL Server 2012 pour l'utilitaire dtexec.

Ce que vous pouvez faire après la mise à niveau

Une fois la mise à niveau terminée, vous pouvez accomplir les tâches suivantes :

  • Exécuter les travaux de l'Agent SQL Server qui exécutent les packages.

  • Utiliser Management Studio pour gérer les packages Integration Services stockés dans une instance de SQL Server 2008 ou SQL Server 2012. Vous devez modifier le fichier de configuration du service pour ajouter l'instance de SQL Server 2008 à la liste des emplacements gérés par le service.

    [!REMARQUE]

    Les premières versions de Management Studio ne peuvent pas se connecter au service SQL Server 2012 Integration Services (SSIS).

  • Identifier la version des packages dans la table système msdb.dbo.sysssispackages en vérifiant la valeur de la colonne packageformat. La table possède une colonne packageformat qui identifie la version de chaque package. La valeur 2 dans la colonne packageformat indique un package SQL Server 2005 Integration Services (SSIS) et la valeur 3 un package SQL Server 2008 Integration Services (SSIS). Tant que vous n'effectuez pas la migration des packages vers le nouveau format, la valeur de la colonne packageformat ne change pas.

  • Vous ne pouvez pas utiliser les outils SQL Server 2005 ou SQL Server 2008 pour concevoir, exécuter ou gérer des packages Integration Services. Les outils SQL Server 2005 et SQL Server 2008 incluent les versions correspondantes de Outils de données SQL Server (SSDT), de l'Assistant Importation et Exportation SQL Server et de l'utilitaire d'exécution de package (dtexecui.exe). La mise à niveau ne supprime pas les outils SQL Server 2005 ou SQL Server 2008. Toutefois, vous ne serez pas en mesure de faire appel à ces outils pour continuer à utiliser les packages SQL Server 2005 Integration Services (SSIS) ou SQL Server 2008 Integration Services (SSIS) sur un serveur qui a été mis à niveau.

  • Par défaut, dans le cadre d'une installation mise à niveau, Integration Services est configuré de façon à journaliser les événements en rapport avec l'exécution de packages dans le journal d'événements de l'application. Ce paramètre peut générer trop d'entrées de journal d'événements lorsque vous utilisez la fonctionnalité collecteur de données de SQL Server 2012. Les événements enregistrés incluent l'ID d'événement 12288, « le Package a démarré », et l'ID d'événement 12289, « le Package a fini avec succès ». Pour arrêter l'enregistrement de ces deux événements dans le journal d'événements de l'application, ouvrez le Registre pour y apporter des modifications. Dans le Registre, recherchez le nœud HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\110\SSIS et modifiez la valeur DWORD du paramètre LogPackageExecutionToEventLog en remplaçant 1 par 0.

Mise à niveau du seul moteur de base de données vers SQL Server 2012

Cette section décrit les conséquences liées à l'exécution d'une mise à niveau qui obéit aux critères suivants :

  • Vous mettez seulement à niveau une instance du moteur de base de données. Autrement dit, l'instance du moteur de base de données est maintenant une instance de SQL Server 2012, mais l'instance de Integration Services et les outils clients proviennent de SQL Server 2005 ou SQL Server 2008.

  • L'instance du moteur de base de données se trouve sur un ordinateur, tandis que Integration Services et les outils clients se trouvent sur un autre ordinateur.

Ce que vous pouvez faire après la mise à niveau

Les tables système qui stockent les packages dans l'instance mise à niveau du moteur de base de données ne sont pas les mêmes que celles utilisées dans SQL Server 2005 ou SQL Server 2008. Par conséquent, les versions SQL Server 2005 ou SQL Server 2008 de Management Studio et Outils de données SQL Server ne peuvent pas découvrir les packages dans les tables système de l'instance mise à niveau du moteur de base de données. Comme ces packages ne peuvent pas être découverts, l'utilisation que vous pouvez en faire est limitée :

  • Vous ne pouvez pas utiliser les outils SQL Server 2005 ou SQL Server 2008, Management Studio et Outils de données SQL Server sur d'autres ordinateurs pour charger ou gérer les packages à partir de l'instance mise à niveau du moteur de base de données. 

    [!REMARQUE]

    Bien que les packages de l'instance mise à niveau du moteur de base de données n'aient pas encore été migrés vers le nouveau format de package, ils ne sont pas encore détectables par les outils SQL Server 2005 ou SQL Server 2008. Par conséquent, les packages ne peuvent pas être utilisés par les outils SQL Server 2005 ou SQL Server 2008.

  • Vous ne pouvez pas utiliser SQL Server 2005 Integration Services (SSIS) ou SQL Server 2008 Integration Services (SSIS) sur d'autres ordinateurs pour exécuter les packages stockés dans msdb sur l'instance mise à niveau du moteur de base de données.

  • Vous ne pouvez pas utiliser les travaux de l'Agent SQL Server sur des ordinateurs SQL Server 2005 ou SQL Server 2008 pour exécuter les packages SQL Server 2005 Integration Services (SSIS) ou SQL Server 2008 Integration Services (SSIS) stockés dans l'instance mise à niveau du moteur de base de données.

Ressources externes

Entrée de blog Making your Existing Custom SSIS Extensions and Applications Work in Denali, sur blogs.msdn.com.