Sdílet prostřednictvím


Spuštění balíčku SSIS pomocí PowerShellu

platí pro:SQL Server SSIS Integration Runtime ve službě Azure Data Factory

Tento rychlý start ukazuje, jak se pomocí skriptu PowerShellu připojit k databázovému serveru a spustit balíček SSIS.

Požadavky

Server Azure SQL Database naslouchá na portu 1433. Pokud se pokoušíte připojit k serveru Azure SQL Database z podnikové brány firewall, musí být tento port otevřený v podnikové bráně firewall, abyste se mohli úspěšně připojit.

Podporované platformy

Informace v tomto rychlém startu můžete použít ke spuštění balíčku SSIS na následujících platformách:

Informace v tomto rychlém startu nelze použít ke spuštění balíčku SSIS v Linuxu. Další informace o spouštění balíčků v Linuxu najdete v tématu Extrakce, transformace a načítání dat v Linuxu pomocí služby SSIS.

V případě Azure SQL Database získejte informace o připojení.

Pokud chcete balíček spustit ve službě Azure SQL Database, získejte informace o připojení, které potřebujete pro připojení k databázi katalogu SSIS (SSISDB). V následujících postupech potřebujete plně kvalifikovaný název serveru a přihlašovací údaje.

  1. Přihlaste se do Azure Portalu.
  2. V nabídce vlevo vyberte databáze SQL a pak na stránce databáze SQL vyberte databázi SSISDB.
  3. Na stránce Přehled databáze zkontrolujte plně kvalifikovaný název serveru. Pokud chcete zobrazit možnost Kopírování kliknutím , najeďte myší na název serveru.
  4. Pokud zapomenete přihlašovací údaje k serveru Azure SQL Database, přejděte na stránku serveru SQL Database a zobrazte název správce serveru. V případě potřeby můžete heslo resetovat.
  5. Klikněte na Zobrazit připojovací řetězce databáze.
  6. Zkontrolujte úplný připojovací řetězec ADO.NET.

Zprostředkovatel prostředí SSIS PowerShell

Pomocí zprostředkovatele SSIS PowerShellu se můžete připojit k katalogu SSIS a spouštět balíčky v něm.

Níže je základní příklad spuštění balíčku SSIS v katalogu balíčků pomocí zprostředkovatele SSIS PowerShellu.

(Get-ChildItem SQLSERVER:\SSIS\localhost\Default\Catalogs\SSISDB\Folders\Project1Folder\Projects\'Integration Services Project1'\Packages\ |
WHERE { $_.Name -eq 'Package.dtsx' }).Execute($false, $null)

Skript PowerShellu

Zadejte odpovídající hodnoty proměnných v horní části následujícího skriptu a spusťte skript pro spuštění balíčku SSIS.

Poznámka:

Následující příklad používá ověřování systému Windows. Chcete-li použít ověřování SYSTÉMU SQL Server, nahraďte Integrated Security=SSPI; argument argumentem User ID=<user name>;Password=<password>;. Pokud se připojujete k serveru Azure SQL Database, nemůžete použít ověřování systému Windows.

# Variables
$SSISNamespace = "Microsoft.SqlServer.Management.IntegrationServices"
$TargetServerName = "localhost"
$TargetFolderName = "Project1Folder"
$ProjectName = "Integration Services Project1"
$PackageName = "Package.dtsx"

# 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 System.Data.SqlClient.SqlConnection $sqlConnectionString

# Create the Integration Services object
$integrationServices = New-Object $SSISNamespace".IntegrationServices" $sqlConnection

# Get the Integration Services catalog
$catalog = $integrationServices.Catalogs["SSISDB"]

# Get the folder
$folder = $catalog.Folders[$TargetFolderName]

# Get the project
$project = $folder.Projects[$ProjectName]

# Get the package
$package = $project.Packages[$PackageName]

Write-Host "Running " $PackageName "..."

$result = $package.Execute($false, $null)

Write-Host "Done."

Další kroky