Remarque
L’accès à cette page requiert une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page requiert une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :SQL Server
SSIS Integration Runtime dans Azure Data Factory
Ce guide de démarrage rapide montre comment utiliser un script PowerShell pour se connecter à un serveur de base de données et déployer un projet SSIS dans le catalogue SSIS.
Prérequis
Un serveur Azure SQL Database écoute sur le port 1433. Si vous essayez de vous connecter à un serveur Azure SQL Database en étant derrière un pare-feu d’entreprise, ce port doit être ouvert dans le pare-feu d’entreprise pour que vous puissiez vous connecter.
Plateformes prises en charge
Vous pouvez utiliser les informations de ce guide de démarrage rapide pour déployer un projet SSIS sur les plateformes suivantes :
SQL Server sur Windows.
Azure SQL Database. Pour plus d’informations sur le déploiement et l’exécution de packages dans Azure, consultez Effectuer un « lift-and-shift » des charges de travail SQL Server Integration Services vers le cloud.
Vous ne pouvez pas utiliser les informations de ce guide de démarrage rapide pour déployer un package SSIS sur SQL Server sur Linux. Pour plus d’informations sur l’exécution de packages sur Linux, consultez Extraire, transformer et charger des données sur Linux avec SSIS.
Pour Azure SQL Database, obtenez les informations de connexion.
Pour déployer le projet sur Azure SQL Database, obtenez les informations de connexion dont vous avez besoin pour vous connecter à la base de données du catalogue SSIS (SSISDB). Vous avez besoin du nom de serveur entièrement qualifié et des informations de connexion dans les procédures qui suivent.
- Connectez-vous au portail Azure.
- Sélectionnez Bases de données SQL dans le menu de gauche, puis sélectionnez la base de données SSISDB dans la page Bases de données SQL.
- Dans la page Vue d’ensemble de votre base de données, notez le nom complet du serveur. Pour voir l’option Cliquer pour copier, pointez sur le nom du serveur.
- Si vous avez oublié vos informations de connexion au serveur Azure SQL Database, accédez à la page du serveur SQL Database pour voir le nom de l’administrateur du serveur. Vous pouvez réinitialiser le mot de passe si nécessaire.
- Sélectionnez Afficher les chaînes de connexion de base de données.
- Examinez la chaîne de connexion ADO.NET complète.
Méthode d’authentification prise en charge
Consultez Méthodes d’authentification pour le déploiement.
Fournisseur PowerShell SSIS
Entrez les valeurs appropriées pour les variables en haut du script suivant, puis exécutez le script pour déployer le projet SSIS.
Note
L’exemple suivant utilise l’authentification Windows pour effectuer un déploiement sur un serveur SQL local. Utilisez le cmdlet New-PSDive pour établir une connexion à l’aide de l’authentification SQL Server. Si vous vous connectez à un serveur Azure SQL Database, vous ne pouvez pas utiliser l’authentification Windows.
# Variables
$TargetInstanceName = "localhost\default"
$TargetFolderName = "Project1Folder"
$ProjectFilePath = "C:\Projects\Integration Services Project1\Integration Services Project1\bin\Development\Integration Services Project1.ispac"
$ProjectName = "Integration Services Project1"
# Get the Integration Services catalog
$catalog = Get-Item SQLSERVER:\SSIS\$TargetInstanceName\Catalogs\SSISDB\
# Create the target folder
New-Object "Microsoft.SqlServer.Management.IntegrationServices.CatalogFolder" ($catalog,
$TargetFolderName,"Folder description") -OutVariable folder
$folder.Create()
# Read the project file and deploy it
[byte[]] $projectFile = [System.IO.File]::ReadAllBytes($ProjectFilePath)
$folder.DeployProject($ProjectName, $projectFile)
# Verify packages were deployed.
dir "$($catalog.PSPath)\Folders\$TargetFolderName\Projects\$ProjectName\Packages" |
SELECT Name, DisplayName, PackageId
Script PowerShell
Entrez les valeurs appropriées pour les variables en haut du script suivant, puis exécutez le script pour déployer le projet SSIS.
Note
Le script suivant nécessite l’assembly Microsoft.Data.SqlClient . Installez-le à partir du package NuGet et vérifiez que la DLL est accessible à PowerShell. Vous pouvez charger Add-Type -Path "path\to\Microsoft.Data.SqlClient.dll" avant d’exécuter le script.
L’exemple suivant utilise l’authentification Windows pour effectuer un déploiement sur un serveur SQL local. Pour utiliser l’authentification SQL Server, remplacez l’argument Integrated Security=SSPI; par User ID=<user name>;Password=<password>;. Si vous vous connectez à un serveur Azure SQL Database, vous ne pouvez pas utiliser l’authentification Windows.
# Variables
$SSISNamespace = "Microsoft.SqlServer.Management.IntegrationServices"
$TargetServerName = "localhost"
$TargetFolderName = "Project1Folder"
$ProjectFilePath = "C:\Projects\Integration Services Project1\Integration Services Project1\bin\Development\Integration Services Project1.ispac"
$ProjectName = "Integration Services Project1"
# Load the IntegrationServices assembly
$loadStatus = [System.Reflection.Assembly]::Load("Microsoft.SQLServer.Management.IntegrationServices, "+
"Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL")
# Create a connection to the server
$sqlConnectionString = `
"Data Source=" + $TargetServerName + ";Initial Catalog=master;Integrated Security=SSPI;"
$sqlConnection = New-Object Microsoft.Data.SqlClient.SqlConnection $sqlConnectionString
# Create the Integration Services object
$integrationServices = New-Object $SSISNamespace".IntegrationServices" $sqlConnection
# Get the Integration Services catalog
$catalog = $integrationServices.Catalogs["SSISDB"]
# Create the target folder
$folder = New-Object $SSISNamespace".CatalogFolder" ($catalog, $TargetFolderName,
"Folder description")
$folder.Create()
Write-Host "Deploying " $ProjectName " project ..."
# Read the project file and deploy it
[byte[]] $projectFile = [System.IO.File]::ReadAllBytes($ProjectFilePath)
$folder.DeployProject($ProjectName, $projectFile)
Write-Host "Done."
Contenu connexe
- Déployer un package SSIS avec SSMS
- Déployer un package SSIS avec Transact-SQL (SSMS)
- Déployer un package SSIS avec Transact-SQL (VS Code)
- Déployer un package SSIS à partir de l’invite de commandes
- Déployer un package SSIS avec C#
- Exécuter un package SSIS avec SSMS
- Exécuter un package SSIS avec Transact-SQL (SSMS)
- Exécuter un package SSIS avec Transact-SQL (VS Code)
- Exécuter un package SSIS à partir de l’invite de commandes
- Exécuter un package SSIS avec PowerShell
- Exécuter un package SSIS avec C#