Blog > Janvier 2013 > Créer un catalogue de projet SSIS
Créer un catalogue de projet SSIS


Une fois qu'un package SSIS a été créé dans SQL Server Data Tools, il est possible de le déployer sur un service Integration Services. Néanmoins un catalogue SSISDB doit au préalable être créé sur cette instance et l'utilitaire d'installation d'SQL Server 2012 ne le fait pas. Vous pouvez créer le catalogue SSISDB à travers SQL Server Management Studio à l'aide des instructions suivantes :
  • Ouvrez SQL Server Management Studio.
  • Connectez-vous au moteur de base de données SQL Server.
  • Dans l'Explorateur d'objets, développez le nœud du serveur, cliquez avec le bouton droit sur le nœud Catalogues Integration Services, puis sélectionnez "Créer le catalogue".
  • Cliquez sur Activer l'intégration du CLR (le catalogue utilise des procédures stockées du CLR).
  • Cliquez sur Activer l'exécution automatique des procédures stockées Integration Services au démarrage de SQL Server (pour que la procédure stockée catalog.startup s'exécute chaque fois que l'instance de serveur SSIS est redémarre). La procédure stockée effectue la maintenance de l'état des opérations pour le catalogue SSISDB. Elle résout l'état de tous les packages en cours d'exécution si et quand l'instance de serveur SSIS s'arrête.
  • Entrez un mot de passe, puis cliquez sur OK. Le mot de passe protège la clé principale de la base de données utilisée pour le chiffrement des données du catalogue. Enregistrez le mot de passe dans un emplacement sécurisé. Il est également recommandé de sauvegarder la clé principale de base de données.
Vous pouvez également créer le catalogue par programme, en utilisant Windows PowerShell et l'espace de noms Microsoft.SqlServer.Management.IntegrationServices. Dans l'exemple suivant, les propriétés MaxProjectVersions et OperationLogRentionTime sont modifiées.
# Load the IntegrationServices Assembly
[Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.Management.IntegrationServices")

# Store the IntegrationServices Assembly namespace to avoid typing it every time
$ISNamespace = "Microsoft.SqlServer.Management.IntegrationServices"

Write-Host "Connecting to server ..."

# Create a connection to the server
$sqlConnectionString = "Data Source=localhost;Initial Catalog=master;Integrated Security=SSPI;"
$sqlConnection = New-Object System.Data.SqlClient.SqlConnection $sqlConnectionString

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

# Get the existing SSIS Catalog
$catalog = $integrationServices.Catalogs["SSISDB"]

# Changes the catalog property - Maximum number of versions maintained for a project
$catalog.MaxProjectVersions = 5
$catalog.Alter()

# Changes the retention window
$catalog.OperationLogRetentionTime = 100
$catalog.Alter()