Supporto per SQL Server Integration Services in Amazon RDS for SQL Server - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Supporto per SQL Server Integration Services in Amazon RDS for SQL Server

Microsoft SQL Server Integration Services (SSIS) è un componente che è possibile utilizzare per eseguire un'ampia gamma di attività di migrazione dei dati. SSIS è una piattaforma per l'integrazione dei dati e le applicazioni di workflow. È dotato di uno strumento di data warehousing utilizzato per l'estrazione, la trasformazione e il caricamento dei dati (ETL). È inoltre possibile utilizzare questo strumento per automatizzare la manutenzione dei database di SQL Server e degli aggiornamenti ai dati del cubo multidimensionale.

I progetti SSIS sono organizzati in pacchetti salvati come file dtsx basati su XML. I pacchetti possono contenere flussi di controllo e flussi di dati. I flussi di dati vengono utilizzati per rappresentare le operazioni ETL. Dopo la distribuzione, i pacchetti vengono archiviati in SQL Server nel database SSISDB. SSISDB è un database OLTP (Online Transaction Processing) in modalità di recupero completo.

Amazon RDS for SQL Server supporta l'esecuzione di SSIS direttamente su istanze database RDS. È possibile abilitare SSIS su un'istanza database esistente o nuova. È installato sulla stessa istanza database del motore di database.

RDS supporta SSIS per SQL Server Standard ed Enterprise Edition nelle seguenti versioni:

  • SQL Server 2022, tutte le versioni

  • SQL Server 2019, versione 15.00.4043.16.v1 e successive

  • SQL Server 2017, versione 14.00.3223.3.v1 e successive

  • SQL Server 2016, versione 13.00.5426.0.v1 e successive

Limitazioni e consigli

Le limitazioni e i suggerimenti riportati di seguito si applicano all'esecuzione di SSIS su RDS per SQL Server:

  • L'istanza database deve avere un gruppo di parametri associato con il parametro clr enabled impostato su 1. Per ulteriori informazioni, consulta Modifica del parametro per SSIS.

    Nota

    Se si abilita il parametro clr enabled su SQL Server 2017 o 2019, non è possibile utilizzare il Common Language Runtime (CLR) sull'istanza database. Per ulteriori informazioni, consulta Caratteristiche non supportate e caratteristiche con supporto limitato.

  • Sono supportate le seguenti attività del flusso di controllo:

    • Analysis Services esegue task DDL

    • Attività di elaborazione di Analysis Services

    • Attività di inserimento in blocco

    • Verifica dell'attività di integrità del database

    • Attività flusso di dati

    • Attività di query di data mining

    • Attività di profilazione dati

    • Esecuzione di attività del pacchetto

    • Esecuzione di attività del processo agente SQL Server

    • Esecuzione di attività SQL

    • Esecuzione di attività istruzione T-SQL

    • Notifica di attività operatore

    • Ricostruzione attività indice

    • Riorganizzazione attività indice

    • Riduzione attività del database

    • Trasferimento attività database

    • Trasferimento attività processo

    • Trasferimento operazioni di accesso

    • Trasferimento attività oggetti SQL Server

    • Aggiornamento attività statistiche

  • È supportata solo la distribuzione del progetto.

  • È supportata l'esecuzione di pacchetti SSIS utilizzando SQL Server Agent.

  • I record di log SSIS possono essere inseriti solo nei database creati dall'utente.

  • Utilizzare solo la cartella D:\S3 per lavorare con i file. I file inseriti in qualsiasi altra directory vengono eliminati. A questo punto è necessario conoscere alcuni altri dettagli sulla posizione dei file:

    • Inserire i file di input e output del progetto SSIS nella cartella D:\S3.

    • Per l'attività Flusso di dati, modificare il percorso per BLOBTempStoragePath e BufferTempStoragePath su un file all'interno della cartella D:\S3. Il percorso del file deve iniziare con D:\S3\.

    • Assicurarsi che tutti i parametri, le variabili e le espressioni utilizzate per le connessioni ai file puntino alla cartella D:\S3.

    • Nelle istanze Multi-AZ, i file creati da SSIS nella cartella D:\S3 vengono eliminati dopo un failover. Per ulteriori informazioni, consulta Limitazioni Multi-AZ per l'integrazione S3.

    • Carica i file creati da SSIS nella cartella D:\S3 nel tuo bucket Amazon S3 per renderli durevoli.

  • Le trasformazioni Importa colonne ed Esporta colonne e il componente Script nell'attività Flusso di dati non sono supportati.

  • Non è possibile abilitare il dump sull'esecuzione del pacchetto SSIS e non è possibile aggiungere dati ai pacchetti SSIS.

  • La funzionalità Scale Out SSIS non è supportata.

  • Non è possibile distribuire direttamente i progetti. Forniamo procedure archiviate RDS per farlo. Per ulteriori informazioni, consulta Distribuzione di un progetto SSIS.

  • Creare file di progetto SSIS (.ispac) con la modalità di protezione DoNotSavePasswords per la distribuzione su RDS.

  • SSIS non è supportato nelle istanze Always On con repliche di lettura.

  • Non è possibile eseguire il backup del database SSISDB associato all'opzione SSIS.

  • L'importazione e il ripristino del database SSISDB da altre istanze di SSIS non sono supportati.

  • È possibile connettersi ad altre istanze database SQL Server o a un'origine dei dati Oracle. La connessione ad altri motori di database, come MySQL o PostgreSQL, non è supportata per SSIS su RDS per SQL Server. Per ulteriori informazioni sulla connessione a un'origine dei dati Oracle, consulta Server collegati con Oracle OLEDB.

Abilitazione di SSIS

Si abilita SSIS aggiungendo l'opzione SSIS all'istanza database. Utilizzare il seguente processo:

  1. Creare un nuovo gruppo di opzioni oppure utilizzare un gruppo di opzioni esistente.

  2. Aggiungere l'opzione SSIS al gruppo di opzioni.

  3. Creare un nuovo gruppo di parametri o scegliere un gruppo di parametri esistente.

  4. Modificare il gruppo di parametri per impostare il parametro clr enabled su 1 o 2.

  5. Associare il gruppo di opzioni e il gruppo di parametri all'istanza database.

  6. Abilita l'integrazione Amazon S3.

Nota

Se un database con il nome SSISDB o un account di accesso SSIS riservato esiste già nell'istanza database, non è possibile abilitare SSIS sull'istanza.

Creazione del gruppo di opzioni per SSIS

Per utilizzare SSIS, creare un gruppo di opzioni o modificare un gruppo di opzioni che corrisponda all'edizione di SQL Server e alla versione dell'istanza database che si intende utilizzare. A questo scopo, utilizzare la AWS Management Console o AWS CLI.

La seguente procedura crea un gruppo di opzioni per SQL Server Standard Edition 2016.

Per creare il gruppo di opzioni
  1. Accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel pannello di navigazione scegliere Option groups (Gruppi di opzioni).

  3. Seleziona Create group (Crea gruppo).

  4. Nella finestra Create option group (Crea gruppo di opzioni) eseguire queste operazioni:

    1. Per Nome, immettere un nome per il gruppo di opzioni che sia univoco all'interno dell'account AWS, ad esempio ssis-se-2016. Il nome può includere solo lettere, cifre e trattini.

    2. Per Descrizione, immettere una breve descrizione del gruppo di opzioni, ad esempio SSIS option group for SQL Server SE 2016. La descrizione viene usata per la visualizzazione.

    3. Per Engine (Motore), scegliere sqlserver-se.

    4. Per Versione del motore principale, scegliere 13.00.

  5. Scegliere Create (Crea).

La seguente procedura crea un gruppo di opzioni per SQL Server Standard Edition 2016.

Per creare il gruppo di opzioni
  • Eseguire uno dei seguenti comandi.

    Per LinuxmacOS, oUnix:

    aws rds create-option-group \ --option-group-name ssis-se-2016 \ --engine-name sqlserver-se \ --major-engine-version 13.00 \ --option-group-description "SSIS option group for SQL Server SE 2016"

    Per Windows:

    aws rds create-option-group ^ --option-group-name ssis-se-2016 ^ --engine-name sqlserver-se ^ --major-engine-version 13.00 ^ --option-group-description "SSIS option group for SQL Server SE 2016"

Aggiunta dell'opzione SSIS al gruppo di opzioni

Utilizzare la AWS Management Console o l'AWS CLI per aggiungere l'opzione SSIS al gruppo di opzioni.

Per aggiungere l'opzione SSIS
  1. Accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel riquadro di navigazione scegliere Option groups (Gruppi di opzioni).

  3. Scegliere il gruppo di opzioni appena creato, ssis-se-2016 in questo esempio.

  4. Scegliere Add option (Aggiungi opzione).

  5. In Dettagli opzione, scegliere SSIS per Nome opzione.

  6. In Scheduling (Pianificazione), scegliere se aggiungere l'opzione immediatamente o alla finestra di manutenzione successiva.

  7. Scegliere Add option (Aggiungi opzione).

Per aggiungere l'opzione SSIS
  • Aggiungere l'opzione SSIS al gruppo di opzioni.

    Per LinuxmacOS, oUnix:

    aws rds add-option-to-option-group \ --option-group-name ssis-se-2016 \ --options OptionName=SSIS \ --apply-immediately

    Per Windows:

    aws rds add-option-to-option-group ^ --option-group-name ssis-se-2016 ^ --options OptionName=SSIS ^ --apply-immediately

Creazione del gruppo di parametri per SSIS

Creare o modificare un gruppo di parametri per il parametro clr enabled corrispondente all'edizione di SQL Server e alla versione dell'istanza database che si pianifica di utilizzare per SSIS.

Nella procedura seguente viene creato un gruppo di parametri per SQL Server Standard Edition 2016.

Per creare il gruppo di parametri
  1. Accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel pannello di navigazione, scegli Parameter groups (Gruppi di parametri).

  3. Scegliere Create parameter group (Crea gruppo di parametri).

  4. Nel riquadro Create parameter group (Crea gruppi di parametri), procedi nel modo seguente:

    1. Per Famiglia del gruppo di parametri, scegliere sqlserver-se-13.0.

    2. Per Group name (Nome gruppo), immettere un identificatore per il gruppo di parametri, ad esempio ssis-sqlserver-se-13.

    3. Per Description (Descrizione), immettere clr enabled parameter group.

  5. Scegliere Create (Crea).

Nella procedura seguente viene creato un gruppo di parametri per SQL Server Standard Edition 2016.

Per creare il gruppo di parametri
  • Eseguire uno dei seguenti comandi.

    Per LinuxmacOS, oUnix:

    aws rds create-db-parameter-group \ --db-parameter-group-name ssis-sqlserver-se-13 \ --db-parameter-group-family "sqlserver-se-13.0" \ --description "clr enabled parameter group"

    Per Windows:

    aws rds create-db-parameter-group ^ --db-parameter-group-name ssis-sqlserver-se-13 ^ --db-parameter-group-family "sqlserver-se-13.0" ^ --description "clr enabled parameter group"

Modifica del parametro per SSIS

Modifica il parametro clr enabled nel gruppo di parametri che corrisponde all'edizione di SQL Server e alla versione dell'istanza database. Per SSIS, impostare il parametro clr enabled su 1.

Nella procedura seguente, il gruppo di parametri creato per SQL Server Standard Edition 2016 viene modificato.

Per modificare il gruppo di parametri
  1. Accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel riquadro di navigazione scegliere Parameter groups (Gruppi di parametri).

  3. Scegliete il gruppo di parametri, ad esempio ssis-sqlserver-se-13.

  4. In Parameters (Parametri), filtrare l'elenco dei parametri per clr.

  5. Scegliere clr abilitato.

  6. Scegliere Edit parameters (Modifica parametri).

  7. Da Valori, scegliere 1.

  8. Seleziona Save changes (Salva modifiche).

Nella procedura seguente, il gruppo di parametri creato per SQL Server Standard Edition 2016 viene modificato.

Per modificare il gruppo di parametri
  • Eseguire uno dei seguenti comandi.

    Per LinuxmacOS, oUnix:

    aws rds modify-db-parameter-group \ --db-parameter-group-name ssis-sqlserver-se-13 \ --parameters "ParameterName='clr enabled',ParameterValue=1,ApplyMethod=immediate"

    Per Windows:

    aws rds modify-db-parameter-group ^ --db-parameter-group-name ssis-sqlserver-se-13 ^ --parameters "ParameterName='clr enabled',ParameterValue=1,ApplyMethod=immediate"

Associazione del gruppo di opzioni e del gruppo di parametri all'istanza database

Per associare il gruppo di opzioni SSIS e il gruppo di parametri all'istanza database, utilizzare la AWS Management Console o il comando AWS CLI

Nota

Se si utilizza un'istanza esistente, è necessario che siano già associati un dominio Active Directory e un ruolo AWS Identity and Access Management (IAM) associato. Se si crea una nuova istanza, specificare un dominio Active Directory esistente e un ruolo IAM. Per ulteriori informazioni, consulta Utilizzo di Active Directory con RDS per SQL Server.

Per completare l'abilitazione di SSIS, associare il gruppo di opzioni SSIS e il gruppo di parametri a un'istanza database nuova o esistente:

Puoi associare il gruppo di opzioni SSIS e il gruppo di parametri a un'istanza database nuova o esistente.

Per creare un'istanza con il gruppo di opzioni SSIS e il gruppo di parametri
  • Specificare lo stesso tipo di motore di database e la versione principale utilizzati durante la creazione del gruppo di opzioni.

    Per LinuxmacOS, oUnix:

    aws rds create-db-instance \ --db-instance-identifier myssisinstance \ --db-instance-class db.m5.2xlarge \ --engine sqlserver-se \ --engine-version 13.00.5426.0.v1 \ --allocated-storage 100 \ --manage-master-user-password \ --master-username admin \ --storage-type gp2 \ --license-model li \ --domain-iam-role-name my-directory-iam-role \ --domain my-domain-id \ --option-group-name ssis-se-2016 \ --db-parameter-group-name ssis-sqlserver-se-13

    Per Windows:

    aws rds create-db-instance ^ --db-instance-identifier myssisinstance ^ --db-instance-class db.m5.2xlarge ^ --engine sqlserver-se ^ --engine-version 13.00.5426.0.v1 ^ --allocated-storage 100 ^ --manage-master-user-password ^ --master-username admin ^ --storage-type gp2 ^ --license-model li ^ --domain-iam-role-name my-directory-iam-role ^ --domain my-domain-id ^ --option-group-name ssis-se-2016 ^ --db-parameter-group-name ssis-sqlserver-se-13
Per modificare un'istanza database e associare il gruppo di opzioni SSIS e il gruppo di parametri
  • Eseguire uno dei seguenti comandi.

    Per LinuxmacOS, oUnix:

    aws rds modify-db-instance \ --db-instance-identifier myssisinstance \ --option-group-name ssis-se-2016 \ --db-parameter-group-name ssis-sqlserver-se-13 \ --apply-immediately

    Per Windows:

    aws rds modify-db-instance ^ --db-instance-identifier myssisinstance ^ --option-group-name ssis-se-2016 ^ --db-parameter-group-name ssis-sqlserver-se-13 ^ --apply-immediately

Abilitazione dell'integrazione di S3

Per scaricare i file del progetto SSIS (.ispac) sull'host per la distribuzione, utilizzare l'integrazione dei file S3. Per ulteriori informazioni, consulta Integrazione di un'istanza database Amazon RDS for SQL Server con Amazon S3.

Autorizzazioni amministrative su SSISDB

Quando l'istanza viene creata o modificata con l'opzione SSIS, il risultato è un database SSISDB con i ruoli ssis_admin e ssis_logreader concessi all'utente master. L'utente master dispone dei seguenti privilegi in SSISDB:

  • modifica del ruolo ssis_admin

  • modifica del ruolo ssis_logreader

  • modifica di qualsiasi utente

Poiché l'utente principale è un utente autenticato SQL, non è possibile utilizzare l'utente master per l'esecuzione di pacchetti SSIS. L'utente master può utilizzare questi privilegi per creare nuovi utenti SSISDB e aggiungerli ai ruoli ssis_admin e ssis_logreader. Questa operazione è utile per dare accesso agli utenti del dominio per l'utilizzo di SSIS.

Configurazione di un utente autenticato da Windows per SSIS

L'utente master può utilizzare l'esempio di codice riportato di seguito per impostare un accesso autenticato da Windows in SSISDB e concedere le autorizzazioni necessarie per la procedura. In questo modo vengono concesse autorizzazioni all'utente del dominio per distribuire ed eseguire pacchetti SSIS, utilizzare procedure di trasferimento file S3, creare credenziali e lavorare con il proxy Agente SQL Server. Per ulteriori informazioni, consulta Credentials (Database Engine) e Create a SQL Server Agent Proxy nella documentazione di Microsoft.

Nota

È possibile concedere alcune o tutte le autorizzazioni seguenti, se necessario, agli utenti autenticati da Windows.

-- Create a server-level SQL login for the domain user, if it doesn't already exist USE [master] GO CREATE LOGIN [mydomain\user_name] FROM WINDOWS GO -- Create a database-level account for the domain user, if it doesn't already exist USE [SSISDB] GO CREATE USER [mydomain\user_name] FOR LOGIN [mydomain\user_name] -- Add SSIS role membership to the domain user ALTER ROLE [ssis_admin] ADD MEMBER [mydomain\user_name] ALTER ROLE [ssis_logreader] ADD MEMBER [mydomain\user_name] GO -- Add MSDB role membership to the domain user USE [msdb] GO CREATE USER [mydomain\user_name] FOR LOGIN [mydomain\user_name] -- Grant MSDB stored procedure privileges to the domain user GRANT EXEC ON msdb.dbo.rds_msbi_task TO [mydomain\user_name] with grant option GRANT SELECT ON msdb.dbo.rds_fn_task_status TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_task_status TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_cancel_task TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_download_from_s3 TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_upload_to_s3 TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_delete_from_filesystem TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_gather_file_details TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_add_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_update_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_grant_login_to_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_revoke_login_from_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_delete_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_enum_login_for_proxy to [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_enum_proxy_for_subsystem TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_sqlagent_proxy TO [mydomain\user_name] WITH GRANT OPTION -- Add the SQLAgentUserRole privilege to the domain user USE [msdb] GO ALTER ROLE [SQLAgentUserRole] ADD MEMBER [mydomain\user_name] GO -- Grant the ALTER ANY CREDENTIAL privilege to the domain user USE [master] GO GRANT ALTER ANY CREDENTIAL TO [mydomain\user_name] GO

Distribuzione di un progetto SSIS

In RDS, non è possibile distribuire progetti SSIS direttamente utilizzando procedure SQL Server Management Studio (SSMS) o SSIS. Per scaricare i file di progetto da Amazon S3 e quindi distribuirli, utilizzare le procedure archiviate di RDS.

Per eseguire le procedure archiviate, accedere come o qualsiasi utente a cui sono state concesse le autorizzazioni di esecuzione per le procedure archiviate. Per ulteriori informazioni, consulta Configurazione di un utente autenticato da Windows per SSIS.

Per distribuire il progetto SSIS
  1. Scaricare il file di progetto (.ispac).

    exec msdb.dbo.rds_download_from_s3 @s3_arn_of_file='arn:aws:s3:::bucket_name/ssisproject.ispac', [@rds_file_path='D:\S3\ssisproject.ispac'], [@overwrite_file=1];
  2. Inviare l'attività di distribuzione, verificando quanto segue:

    • La cartella è presente nel catalogo SSIS.

    • Il nome del progetto corrisponde al nome del progetto utilizzato durante lo sviluppo del progetto SSIS.

    exec msdb.dbo.rds_msbi_task @task_type='SSIS_DEPLOY_PROJECT', @folder_name='DEMO', @project_name='ssisproject', @file_path='D:\S3\ssisproject.ispac';

Monitoraggio dello stato di un'attività di distribuzione

Per tenere traccia dello stato dell'attività di distribuzione, chiamare la funzione rds_fn_task_status. accetta due parametri. Il primo parametro deve essere sempre NULL perché non si applica a SSIS. Il secondo parametro accetta un ID attività.

Per visualizzare l'elenco di tutte le attività, imposta il primo parametro su NULL e il secondo parametro su 0, come indicato nell'esempio seguente.

SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,0);

Per ottenere un'attività specifica, imposta il primo parametro su NULL e il secondo parametro sull'ID attività, come indicato nell'esempio seguente.

SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,42);

La funzione rds_fn_task_status restituisce le seguenti informazioni.

Parametro di output

Descrizione

task_id

L'ID dell'attività.

task_type

SSIS_DEPLOY_PROJECT

database_name

Non applicabile alle attività SSIS.

% complete

L'avanzamento dell'attività espresso come percentuale.

duration (mins)

La quantità di tempo dedicato all'attività, in minuti.

lifecycle

Lo stato dell'attività. I possibili stati sono i seguenti:

  • CREATED – Dopo aver chiamato la procedura archiviata msdb.dbo.rds_msbi_task, viene creata un'attività e lo stato è impostato su CREATED.

  • IN_PROGRESS – Dopo l'avvio di un'attività, lo stato viene impostato su IN_PROGRESS. Possono essere necessari fino a 5 minuti perché lo stato cambi da CREATED in IN_PROGRESS.

  • SUCCESS – Al termine di un'attività, lo stato viene impostato su SUCCESS.

  • ERROR – Se un'attività non riesce, lo stato viene impostato su ERROR. Per ulteriori informazioni sull'errore, consulta la colonna task_info.

  • CANCEL_REQUESTED – Quando chiami rds_cancel_task, lo stato dell'attività viene impostato su CANCEL_REQUESTED.

  • CANCELLED – Dopo che un'attività è stata annullata, lo stato dell'attività viene impostato su CANCELLED.

task_info

Ulteriori informazioni sull'attività. Se si verifica un errore durante l'elaborazione, questa colonna contiene informazioni sull'errore.

last_updated

La data e l'ora dell'ultimo aggiornamento dello stato dell'attività.

created_at

La data e l'ora di creazione dell'attività.

S3_object_arn

Non applicabile alle attività SSIS.

overwrite_S3_backup_file

Non applicabile alle attività SSIS.

KMS_master_key_arn

Non applicabile alle attività SSIS.

filepath

Non applicabile alle attività SSIS.

overwrite_file

Non applicabile alle attività SSIS.

task_metadata

Metadati associati all'attività SSIS.

Utilizzo di SSIS

Dopo aver distribuito il progetto SSIS nel catalogo SSIS, è possibile eseguire i pacchetti direttamente da SSMS o pianificarli utilizzando SQL Server Agent. È necessario utilizzare un accesso autenticato da Windows per l'esecuzione di pacchetti SSIS. Per ulteriori informazioni, consulta Configurazione di un utente autenticato da Windows per SSIS.

Impostazione di gestori di connessioni al database per i progetti SSIS

Quando si utilizza un gestore di connessione, è possibile utilizzare i seguenti tipi di autenticazione:

  • Per le connessioni al database locale mediante Active Directory gestito da AWS, puoi utilizzare l'autenticazione SQL o l'autenticazione di Windows. Per l'autenticazione di Windows, utilizzare DB_instance_name.fully_qualified_domain_name come nome del server della stringa di connessione.

    Un esempio è myssisinstance.corp-ad.example.com, dove myssisinstance è il nome dell'istanza database ed corp-ad.example.com è il nome di dominio completo.

  • Per le connessioni remote, utilizzare sempre l'autenticazione SQL.

  • Per le connessioni al database locale mediante Active Directory gestito dal cliente, puoi utilizzare l'autenticazione SQL o l'autenticazione di Windows. Per l'autenticazione di Windows, utilizza .LocalHost come nome del server della stringa di connessione.

Creazione di un proxy SSIS

Per pianificare pacchetti SSIS utilizzando SQL Server Agent, creare una credenziale SSIS e un proxy SSIS. Eseguire queste procedure come utente autenticato da Windows.

Per creare le credenziali SSIS
  • Creare le credenziali per il proxy. A tale scopo, è possibile utilizzare SSMS o la seguente istruzione SQL.

    USE [master] GO CREATE CREDENTIAL [SSIS_Credential] WITH IDENTITY = N'mydomain\user_name', SECRET = N'mysecret' GO
    Nota

    IDENTITY deve essere un accesso autenticato dal dominio. Sostituire mysecret con la password per l'accesso autenticato dal dominio.

    Ogni volta che l'host primario SSISDB viene modificato, modificare le credenziali proxy SSIS per consentire al nuovo host di accedervi.

Per creare il proxy SSIS
  1. Utilizzare l'istruzione SQL seguente per creare il proxy.

    USE [msdb] GO EXEC msdb.dbo.sp_add_proxy @proxy_name=N'SSIS_Proxy',@credential_name=N'SSIS_Credential',@description=N'' GO
  2. Utilizzare l'istruzione SQL seguente per concedere l'accesso al proxy ad altri utenti.

    USE [msdb] GO EXEC msdb.dbo.sp_grant_login_to_proxy @proxy_name=N'SSIS_Proxy',@login_name=N'mydomain\user_name' GO
  3. Utilizzare la seguente istruzione SQL per dare al sottosistema SSIS l'accesso al proxy.

    USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='GRANT_SUBSYSTEM_ACCESS',@proxy_name='SSIS_Proxy',@proxy_subsystem='SSIS' GO
Per visualizzare il proxy e le concessioni sul proxy
  1. Utilizzare l'istruzione SQL seguente per visualizzare gli assegnatari del proxy.

    USE [msdb] GO EXEC sp_help_proxy GO
  2. Utilizzare l'istruzione SQL seguente per visualizzare i privilegi del sottosistema.

    USE [msdb] GO EXEC msdb.dbo.sp_enum_proxy_for_subsystem GO

Pianificazione di un pacchetto SSIS utilizzando SQL Server Agent

Dopo aver creato le credenziali e il proxy e dopo aver concesso l'accesso SSIS al proxy, è possibile creare un processo Agente SQL Server per pianificare il pacchetto SSIS.

Per pianificare il pacchetto SSIS
  • È possibile utilizzare SSMS o T-SQL per creare il processo Agente SQL Server. L'esempio seguente utilizza T-SQL.

    USE [msdb] GO DECLARE @jobId BINARY(16) EXEC msdb.dbo.sp_add_job @job_name=N'MYSSISJob', @enabled=1, @notify_level_eventlog=0, @notify_level_email=2, @notify_level_page=2, @delete_level=0, @category_name=N'[Uncategorized (Local)]', @job_id = @jobId OUTPUT GO EXEC msdb.dbo.sp_add_jobserver @job_name=N'MYSSISJob',@server_name=N'(local)' GO EXEC msdb.dbo.sp_add_jobstep @job_name=N'MYSSISJob',@step_name=N'ExecuteSSISPackage', @step_id=1, @cmdexec_success_code=0, @on_success_action=1, @on_fail_action=2, @retry_attempts=0, @retry_interval=0, @os_run_priority=0, @subsystem=N'SSIS', @command=N'/ISSERVER "\"\SSISDB\MySSISFolder\MySSISProject\MySSISPackage.dtsx\"" /SERVER "\"my-rds-ssis-instance.corp-ad.company.com/\"" /Par "\"$ServerOption::LOGGING_LEVEL(Int16)\"";1 /Par "\"$ServerOption::SYNCHRONIZED(Boolean)\"";True /CALLERINFO SQLAGENT /REPORTING E', @database_name=N'master', @flags=0, @proxy_name=N'SSIS_Proxy' GO

Revoca dell'accesso SSIS dal proxy

È possibile revocare l'accesso al sottosistema SSIS ed eliminare il proxy SSIS utilizzando le seguenti procedure memorizzate.

Per revocare l'accesso ed eliminare il proxy
  1. Revocare l'accesso al sottosistema.

    USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='REVOKE_SUBSYSTEM_ACCESS',@proxy_name='SSIS_Proxy',@proxy_subsystem='SSIS' GO
  2. Revocare le concessioni per la delega.

    USE [msdb] GO EXEC msdb.dbo.sp_revoke_login_from_proxy @proxy_name=N'SSIS_Proxy',@name=N'mydomain\user_name' GO
  3. Eliminare il proxy.

    USE [msdb] GO EXEC dbo.sp_delete_proxy @proxy_name = N'SSIS_Proxy' GO

Disabilitazione di SSIS

Per disabilitare SSIS, rimuovere l'opzione SSIS dal relativo gruppo di opzioni.

Importante

La rimozione dell'opzione non elimina il database SSISDB, quindi è possibile rimuovere in modo sicuro l'opzione senza perdere i progetti SSIS.

È possibile riattivare l'opzione SSIS dopo la rimozione per riutilizzare i progetti SSIS precedentemente distribuiti nel catalogo SSIS.

La procedura seguente rimuove l'opzione SSIS.

Per rimuovere l'opzione SSIS dal suo gruppo di opzioni
  1. Accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel pannello di navigazione scegliere Option groups (Gruppi di opzioni).

  3. Scegliere il gruppo di opzioni con l'opzione SSIS (ssis-se-2016 negli esempi precedenti).

  4. Scegliere Delete option (Elimina opzione).

  5. In Opzioni di eliminazione, scegliere SSIS per Opzioni da eliminare.

  6. In Apply immediately (Applica immediatamente), scegliere Yes (Sì) per eliminare immediatamente l'opzione oppure No per eliminarla nella finestra di manutenzione successiva.

  7. Scegliere Delete (Elimina).

La procedura seguente rimuove l'opzione SSIS.

Per rimuovere l'opzione SSIS dal suo gruppo di opzioni
  • Eseguire uno dei seguenti comandi.

    Per LinuxmacOS, oUnix:

    aws rds remove-option-from-option-group \ --option-group-name ssis-se-2016 \ --options SSIS \ --apply-immediately

    Per Windows:

    aws rds remove-option-from-option-group ^ --option-group-name ssis-se-2016 ^ --options SSIS ^ --apply-immediately

Eliminazione del database SSISDB

Dopo aver rimosso l'opzione SSIS, il database SSISDB non viene eliminato. Per eliminare il database SSISDB, utilizzare la procedura memorizzata rds_drop_ssis_database dopo aver rimosso l'opzione SSIS.

Per eliminare il database SSIS
  • Utilizzare la seguente stored procedure.

    USE [msdb] GO EXEC dbo.rds_drop_ssis_database GO

Dopo aver eliminato il database SSISDB, se si riattiva l'opzione SSIS si ottiene un nuovo catalogo SSISDB.