Habilitar o acompanhamento de mudanças no SQL Server

Prévia

O LakeFlow Connect está em um Public Preview fechado. Para participar da pré-visualização, entre em contato com a equipe do Databricks account .

Este artigo descreve como habilitar o acompanhamento de mudanças em SQL Server. É necessário um acompanhamento de mudança ou o site CDC para a ingestão em Databricks. Para obter orientação sobre qual opção escolher, consulte Change acompanhamento vs. captura de dados de alterações (CDC).

Habilitar o acompanhamento de mudanças em um banco de dados

execute o seguinte, substituindo <database-name> pelo nome do banco de dados no qual o senhor deseja ativar o acompanhamento de alterações. Defina CHANGE_RETENTION para o tempo máximo em que o gateway provavelmente ficará inativo. Após esse período de tempo, é necessário um refresh completo para retomar o gateway.

ALTER DATABASE <database-name> SET CHANGE_TRACKING = ON (CHANGE_RETENTION = 3 DAYS, AUTO_CLEANUP = ON)

Habilitar a alteração do acompanhamento em uma tabela

execute o seguinte, substituindo <schema-name>.<table-name> pelo nome do esquema e da tabela em que o senhor deseja ativar o acompanhamento de alterações.

ALTER TABLE <schema-name>.<table-name> ENABLE CHANGE_TRACKING

Conceder a visualização CHANGE acompanhamento em tabelas ingeridas

Além dos privilégios descritos na configuração de origem, o usuário do banco de dados precisa do privilégio VIEW CHANGE TRACKING nas tabelas ingeridas ou em um esquema que contém tabelas que estão sendo rastreadas.

Para conceder permissões no nível do esquema, execute o seguinte:

GRANT VIEW CHANGE TRACKING ON SCHEMA::<schema-name> TO <cdc-username>;

Para conceder permissões em nível de tabela, execute o seguinte:

GRANT VIEW CHANGE TRACKING ON OBJECT::<schema-name>.<table-name> TO <cdc-username>;

Configurar a captura de DDL e a evolução do esquema

O conector do SQL Server pode rastrear a linguagem de definição de dados (DDL) nos objetos de banco de dados ingeridos e aplicar alterações relevantes no esquema da tabela às tabelas de destino ou adicionar novas tabelas no caso de replicação de esquema completo.

Para realizar a captura DDL, é necessária uma configuração adicional do objeto de banco de dados (por exemplo, tabelas internas, procedimentos armazenados e gatilhos). O script T-SQL fornecido nesta seção elimina todos os objetos de suporte DDL preexistentes e cria os objetos de suporte DDL necessários para capturar as alterações de DDL que ocorrem no banco de dados.

Para configurar a captura de DDL e a evolução do esquema, faça o seguinte:

  1. faça o download do script T-SQL a seguir:

    ddl_support_objects.sql

  2. Modifique o script para definir o valor mode:

    • BOTH: Inicializa os objetos CT e CDC (default)

    • CT: inicializa objetos CT

    • CDC: Inicializa os objetos CDC

    • NONE: Exclui todos os objetos CT e CDC pré-existentes

  3. Execute o script em cada banco de dados que contém tabelas que o senhor deseja replicar.

Conceda os privilégios necessários para a replicação

Conceda as seguintes permissões ao usuário do banco de dados:

GRANT VIEW CHANGE TRACKING ON OBJECT::dbo.replicate_io_audit_ddl_1 TO <database-user>;
GRANT VIEW DEFINITION ON DATABASE::<database-name> TO <database-user>;