Usar o SSIS - Amazon Relational Database Service

Usar o SSIS

Depois de implantar o projeto do SSIS no catálogo do SSIS, você pode executar pacotes diretamente do SSMS ou programá-los usando o SQL Server Agent. Você deve usar um login autenticado pelo Windows para executar pacotes do SSIS. Para obter mais informações, consulte Configurar um usuário autenticado pelo Windows para o SSIS.

Definir gerenciadores de conexão de banco de dados para projetos do SSIS

Ao utilizar um gerenciador de conexões, você pode usar estes tipos de autenticação:

  • Para conexões de banco de dados local usando o AWS Managed Active Directory, você pode usar autenticação do SQL ou autenticação do Windows. Para autenticação do Windows, use DB_instance_name.fully_qualified_domain_name como o nome do servidor da string de conexão.

    Um exemplo é myssisinstance.corp-ad.example.com, onde myssisinstance é o nome da instância de banco de dados e corp-ad.example.com é o nome de domínio totalmente qualificado.

  • Para conexões remotas, use sempre a autenticação do SQL.

  • Para conexões de banco de dados local usando um Active Directory autogerenciado, você pode usar autenticação do SQL ou autenticação do Windows. Para autenticação do Windows, use . ou LocalHost como o nome do servidor da string de conexão.

Criar um proxy do SSIS

Para poder agendar pacotes do SSIS usando o SQL Server Agent, crie uma credencial do SSIS e um proxy do SSIS. Execute esses procedimentos como um usuário autenticado pelo Windows.

Como criar a credencial do SSIS
  • Crie a credencial para o proxy. Para fazer isso, você pode usar o SSMS ou a seguinte instrução SQL.

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

    IDENTITY deve ser um login autenticado por domínio. Substitua mysecret pela senha do login autenticado por domínio.

    Sempre que o host primário do SSISDB for alterado, altere as credenciais de proxy do SSIS para permitir que o novo host as acesse.

Como criar o proxy do SSIS
  1. Use a seguinte instrução SQL para criar o proxy.

    USE [msdb] GO EXEC msdb.dbo.sp_add_proxy @proxy_name=N'SSIS_Proxy',@credential_name=N'SSIS_Credential',@description=N'' GO
  2. Use a seguinte instrução SQL para conceder acesso ao proxy para outros usuários.

    USE [msdb] GO EXEC msdb.dbo.sp_grant_login_to_proxy @proxy_name=N'SSIS_Proxy',@login_name=N'mydomain\user_name' GO
  3. Use a seguinte instrução SQL para dar ao subsistema do SSIS acesso ao proxy.

    USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='GRANT_SUBSYSTEM_ACCESS',@proxy_name='SSIS_Proxy',@proxy_subsystem='SSIS' GO
Como visualizar o proxy e as concessões no proxy
  1. Use a seguinte instrução SQL para visualizar os beneficiários do proxy.

    USE [msdb] GO EXEC sp_help_proxy GO
  2. Use a seguinte instrução SQL para visualizar as concessões do subsistema.

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

Programar um pacote do SSIS usando o SQL Server Agent

Depois de criar a credencial e proxy e conceder ao SSIS acesso ao proxy, você pode criar um trabalho do SQL Server Agent para programar o pacote do SSIS.

Como programar o pacote do SSIS
  • Você pode usar SSMS ou T-SQL para criar o trabalho do SQL Server Agent. O exemplo a seguir usa 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

Revogar o acesso do SSIS do proxy

Você pode revogar o acesso ao subsistema do SSIS e excluir o proxy do SSIS usando os seguintes procedimentos armazenados.

Como revogar o acesso e excluir o proxy
  1. Revogue o acesso ao subsistema.

    USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='REVOKE_SUBSYSTEM_ACCESS',@proxy_name='SSIS_Proxy',@proxy_subsystem='SSIS' GO
  2. Revogue as concessões no proxy.

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

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