Configurar um banco de dados do Azure SQL

As etapas a seguir mostram como configurar um banco de dados do Azure SQL para uso com o Datastream.

Para configurar um banco de dados do Azure SQL:

  1. Ative a captura de dados alterados (CDC) do banco de dados SQL de origem do Azure. Para fazer isso, conecte-se ao banco de dados usando o Azure Data Studio ou o SQL Server Management Studio e execute o seguinte comando:

    EXEC sys.sp_cdc_enable_db;
    GO
    
  2. Ative a CDC nas tabelas em que você precisa capturar alterações:

    EXEC sys.sp_cdc_enable_table
    @source_schema = N'SCHEMA_NAME',
    @source_name = N'TABLE_NAME',
    @role_name = NULL
    GO
    

    Substitua:

    • SCHEMA_NAME: o nome do esquema a que as tabelas pertencem.
    • TABLE_NAME: o nome da tabela em que você quer ativar a CDC
  3. Inicie o SQL Server Agent e verifique se ele está em execução o tempo todo. Se o SQL Server Agent permanecer inativo por um período prolongado, os registros poderão ficar truncados, levando à perda permanente dos dados de alteração que não foram lidos pelo Datastream.

    Para informações sobre como executar o SQL Server Agent, consulte Iniciar, interromper ou reiniciar uma instância do SQL Server Agent.

  4. Ative o isolamento de snapshots.

    Ao preencher dados do banco de dados do SQL Server, é importante garantir snapshots consistentes. Se você não aplicar as configurações descritas nesta seção, as alterações feitas no banco de dados durante o processo de preenchimento podem levar a resultados duplicados ou incorretos, especialmente para tabelas sem chaves primárias.

    A ativação do isolamento de snapshots cria uma visualização temporária do banco de dados no início do processo de preenchimento. Isso garante que os dados copiados permaneçam consistentes, mesmo que outros usuários façam alterações nas tabelas ativas ao mesmo tempo. Ativar o isolamento de snapshots pode ter um pequeno impacto no desempenho, mas é essencial para uma extração de dados confiável.

    Para ativar o isolamento de snapshots:

    1. Conecte-se ao banco de dados usando um cliente do SQL Server.
    2. Execute este comando:
    ALTER DATABASE DATABASE_NAME SET ALLOW_SNAPSHOT_ISOLATION ON;
    

    Substitua DATABASE_NAME pelo nome do seu banco de dados.

  5. Crie um usuário do Datastream:

    1. Conecte-se ao banco de dados master e crie um login:

      USE master;
      CREATE LOGIN YOUR_LOGIN WITH PASSWORD = 'PASSWORD';
      
    2. Conecte-se ao banco de dados de origem e crie um usuário para seu login:

      USE DATABASE_NAME
      CREATE USER USER_NAME FOR LOGIN YOUR_LOGIN;
      
    3. Atribua os papéis db_owner e db_denydatawriter ao usuário:

      EXEC sp_addrolemember 'db_owner', 'USER_NAME';
      EXEC sp_addrolemember 'db_denydatawriter', 'USER_NAME';