Todos os produtos
Search
Central de documentação

Data Transmission Service:Migrar SQL Server autogerenciado para o AnalyticDB for PostgreSQL

Última atualização: Oct 15, 2026

O Data Transmission Service (DTS) permite migrar dados de um banco de dados SQL Server autogerenciado para o AnalyticDB for PostgreSQL para análise em tempo real.

Pré-requisitos

  • Esta tarefa de migração de dados só pode ser configurada no novo console.

  • Seu banco de dados SQL Server autogerenciado deve usar uma versão compatível. Para obter mais informações, consulte {{XREF_0}}.

  • Crie a instância de destino do AnalyticDB for PostgreSQL. Para obter mais informações, consulte {{XREF_1}}.

  • A instância de destino do AnalyticDB for PostgreSQL deve ter mais espaço de armazenamento disponível do que o banco de dados SQL Server autogerenciado.

  • Se a instância de origem atender a qualquer uma das condições a seguir, divida-a em várias tarefas de migração.

    • A instância de origem possui mais de 10 bancos de dados.

    • Backups de log são realizados mais de uma vez por hora para um único banco de dados.

    • Mais de 100 operações de Linguagem de Definição de Dados (DDL) são executadas por hora em um único banco de dados.

    • A taxa de geração de logs para um único banco de dados excede 20 MB/s.

    • É necessário ativar o Change Data Capture (CDC) em mais de 1.000 tabelas.

Limitações

Nota
  • O DTS migra chaves estrangeiras durante a migração de esquema.

  • Durante a migração de dados completa e incremental, o DTS desativa temporariamente as verificações de restrições e cascatas de chave estrangeira no nível da sessão. Atualizações ou exclusões em cascata no banco de dados de origem enquanto a tarefa está em execução podem causar inconsistência de dados.

  • O DTS não oferece suporte à execução de uma migração completa em vários estágios; a migração completa deve ser concluída em uma única operação. Se você precisar migrar dados em lotes, configure várias tarefas de migração.

Tipo

Descrição

Limites do banco de dados de origem

  • O servidor do banco de dados de origem deve ter largura de banda de saída suficiente. Largura de banda insuficiente reduz a velocidade da migração de dados.

  • As tabelas a serem migradas devem ter uma chave primária ou restrição exclusiva, e as colunas na chave ou restrição devem ser únicas. Caso contrário, pode ocorrer duplicação de dados no banco de dados de destino.

  • Se você selecionar tabelas específicas para migração e precisar editá-las (por exemplo, mapear nomes de tabelas ou colunas), uma única tarefa de migração poderá migrar no máximo 1.000 tabelas. Se você exceder esse limite, a tarefa falhará após o envio. Divida as tabelas em várias tarefas ou configure uma tarefa para migrar todo o banco de dados.

  • Uma única tarefa de migração suporta no máximo 10 bancos de dados. Exceder esse limite pode causar problemas de estabilidade e desempenho. Divida a migração em várias tarefas, se necessário.

  • Se você configurar uma tarefa para migrar objetos específicos em vez de um banco de dados inteiro, não será possível migrar objetos que tenham o mesmo nome de tabela, mas nomes de esquema diferentes, para o mesmo banco de dados de destino dentro de uma única tarefa.

  • Se você executar a migração incremental de dados, os logs de transação devem atender aos seguintes requisitos:

    • O registro de transações deve estar ativado, o modo de backup deve estar definido como Completo e um backup físico completo deve ter sido realizado com êxito.

    • Para migração de dados apenas incremental, o Data Transmission Service (DTS) exige a retenção dos logs de transação do banco de dados de origem por mais de 24 horas. Se uma tarefa incluir migração de dados completa e incremental, retenha os logs por pelo menos sete dias. Após a conclusão da migração completa de dados, você pode reduzir o período de retenção para mais de 24 horas. Caso contrário, a tarefa do DTS poderá falhar devido à indisponibilidade de logs de transação. Em casos extremos, pode ocorrer inconsistência ou perda de dados. Problemas causados por retenção insuficiente de logs não são cobertos pelo Acordo de Nível de Serviço (SLA) do DTS.

  • Se você ativar o CDC (Change Data Capture) para as tabelas de origem a serem migradas, elas devem atender às seguintes condições. Caso contrário, a pré-verificação falhará.

    • O valor do campo srvname na visualização sys.sysservers deve ser igual ao valor retornado pela função SERVERPROPERTY.

    • Se o banco de dados de origem for um SQL Server autogerenciado, o proprietário do banco de dados deve ser sa. Se o banco de dados de origem for uma instância do ApsaraDB RDS for SQL Server, o proprietário do banco de dados deve ser sqlsa.

    • Se o banco de dados de origem for Enterprise Edition, ele deve ser SQL Server 2008 ou posterior.

    • Se o banco de dados de origem for Standard Edition, ele deve ser SQL Server 2016 SP1 ou posterior.

    • Se o banco de dados de origem for SQL Server 2017 (Standard ou Enterprise Edition), atualize-o para uma versão posterior.

  • O DTS usa a função fn_log para obter logs do banco de dados de origem. Essa função apresenta gargalos de desempenho, portanto, não limpe os logs do banco de dados de origem prematuramente. Caso contrário, a tarefa do DTS poderá falhar.

  • Limites nas operações no banco de dados de origem:

    • Durante as fases de migração de esquema e migração completa de dados, não execute operações DDL que alterem a estrutura do banco de dados ou da tabela. Caso contrário, a tarefa de migração de dados falhará.

    • Se você executar apenas a migração completa de dados, não grave novos dados na instância de origem. Caso contrário, os dados nos bancos de dados de origem e de destino ficarão inconsistentes. Para garantir a consistência dos dados em tempo real, selecione Migração de Esquema, Migração Completa de Dados e Migração Incremental de Dados.

  • Se o banco de dados de origem for uma instância somente leitura, o DTS não migrará operações DDL.

  • Se o banco de dados de origem for um Azure SQL Database, uma instância de migração poderá migrar apenas um banco de dados.

  • Se o banco de dados de origem for uma instância do ApsaraDB RDS for SQL Server e a tarefa de migração incluir migração incremental de dados, garanta que a Criptografia Transparente de Dados (TDE) esteja desativada para garantir a estabilidade da tarefa. Para obter mais informações, consulte {{XREF_2}}.

  • Se você usar o comando sp_rename para renomear objetos, como procedimentos armazenados, antes da execução da tarefa de migração de esquema, a tarefa poderá não funcionar conforme o esperado ou poderá falhar.

    Nota

    Use o comando ALTER para renomear objetos de banco de dados.

  • No modo de análise baseada em logs híbridos, o banco de dados de origem não suporta operações consecutivas de adição ou exclusão de colunas com um intervalo inferior a 10 minutos. Por exemplo, se você executar as instruções SQL a seguir consecutivamente, a tarefa falhará.

    ALTER TABLE test_table DROP COLUMN Flag;
    ALTER TABLE test_table ADD Remark nvarchar(50) not null default('');
  • Se o banco de dados de origem for uma instância do ApsaraDB RDS for SQL Server executando a edição Web, defina o SQL Server Incremental Synchronization Mode como Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported) ao configurar a tarefa.

  • Durante a migração completa de dados, ative o parâmetro READ_COMMITTED_SNAPSHOT para o banco de dados de origem a fim de evitar que a contenção de bloqueio compartilhado afete as gravações de dados. Caso contrário, pode ocorrer inconsistência de dados ou falha na tarefa. Problemas causados pela não ativação desse parâmetro não são cobertos pelo SLA do DTS.

Outros limites

  • A migração é suportada apenas para tipos de dados básicos, mas não para dados dos tipos CURSOR, ROWVERSION, SQL_VARIANT, HIERARCHYID, POLYGON, GEOMETRY ou GEOGRAPHY, nem para tipos definidos pelo usuário criados usando o comando CREATE TYPE.

  • O DTS não oferece suporte à migração dos seguintes objetos de banco de dados: INDEX, VIEW, PROCEDURE, FUNCTION, TRIGGER, FK, FULL_TEXT_INDEX, DATATYPE, DEFAULT, SYNONYM, CATALOG, PLAN_GUIDE, DEFAULT_CONSTRAINT, UK, CK e SEQUENCE.

  • Ao selecionar objetos de migração, a menor unidade suportada é uma tabela. É possível modificar mapeamentos de colunas. Se você usar mapeamento de colunas para uma migração parcial de tabela ou se as estruturas das tabelas de origem e destino forem inconsistentes, os dados nas colunas que existem na tabela de origem, mas não na de destino, serão perdidos.

  • A tabela de destino não pode ser uma tabela otimizada para anexação (AO).

  • Se uma tabela a ser migrada tiver uma chave primária, a coluna de chave primária na tabela de destino deve ser a mesma da tabela de origem. Se uma tabela a ser migrada não tiver uma chave primária, a coluna de chave primária na tabela de destino deve ser a mesma da chave de distribuição.

  • A chave exclusiva da tabela de destino, incluindo a coluna de chave primária, deve conter todas as colunas da chave de distribuição.

  • Se você definir Configure Objects como SQL Server Incremental Synchronization Mode na etapa Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported), as tabelas a serem migradas devem ter um índice clusterizado que inclua a coluna de chave primária. O DTS não suporta a migração de tabelas heap, tabelas sem chaves primárias, tabelas compactadas, tabelas com colunas computadas ou tabelas com colunas esparsas neste modo. Essas limitações não se aplicam no modo de análise baseada em logs híbridos.

    Nota

    Para obter informações sobre como visualizar detalhes da tabela, consulte {{XREF_3}}

  • Se você definir Configure Objects como SQL Server Incremental Synchronization Mode na etapa Log-based Parsing for Non-heap Tables and CDC-based Incremental Synchronization for Heap Tables (Hybrid Log-based Parsing), os seguintes limites também se aplicam:

    • O DTS depende do componente CDC para migração incremental. Garanta que o trabalho de CDC no banco de dados de origem esteja sendo executado conforme o esperado. Caso contrário, a tarefa do DTS falhará.

    • Por padrão, o componente CDC armazena dados incrementais por três dias. Ajuste o período de retenção executando o comando exec console.sys.sp_cdc_change_job @job_type = 'cleanup', @retention= <time>;.

      Nota
      • <time> especifica o período de retenção em minutos.

      • Se o número médio diário de alterações SQL incrementais para uma única tabela exceder 10 milhões, defina <time> como 1440.

    • Em uma única tarefa de migração, ative o CDC para no máximo 1.000 tabelas. Caso contrário, a tarefa poderá apresentar alta latência ou tornar-se instável.

    • O módulo de pré-verificação de uma tarefa de migração incremental de dados do DTS ativa o CDC no banco de dados de origem. Durante esse processo, as limitações internas do mecanismo do SQL Server podem causar bloqueio temporário de tabelas no banco de dados de origem.

  • Se você definir Configure Objects como SQL Server Incremental Synchronization Mode na etapa Polling and querying CDC instances for incremental synchronization, os seguintes limites também se aplicam:

    • A conta do banco de dados de origem usada pela instância do DTS deve ter permissões para ativar o CDC. Uma conta com a função sysadmin é necessária para ativar o CDC no nível do banco de dados. Uma conta privilegiada é necessária para ativar o CDC no nível da tabela.

      Nota
      • A conta mais privilegiada (administrador do servidor) fornecida pelo console do Azure SQL Database atende aos requisitos. Para bancos de dados adquiridos com base no modelo vCore, o CDC pode ser ativado para todas as especificações. Para bancos de dados adquiridos com base no modelo DTU, o CDC só pode ser ativado para camadas de serviço S3 ou superior.

      • A conta privilegiada de uma instância do Amazon RDS for SQL Server atende aos requisitos e suporta a ativação do CDC no nível do banco de dados por meio de procedimentos armazenados.

      • Não é possível ativar o CDC para tabelas que possuem um índice columnstore clusterizado.

      • O módulo de pré-verificação de uma tarefa de migração incremental de dados do DTS ativa o CDC no banco de dados de origem. Durante esse processo, as limitações internas do mecanismo do SQL Server podem causar bloqueio temporário de tabelas no banco de dados de origem.

    • O DTS obtém dados incrementais consultando e pesquisando a instância de CDC de cada tabela no banco de dados de origem. Migre no máximo 1.000 tabelas do banco de dados de origem. Caso contrário, a tarefa poderá apresentar alta latência ou tornar-se instável.

    • Por padrão, o componente CDC armazena dados incrementais por três dias. Ajuste o período de retenção executando o comando exec console.sys.sp_cdc_change_job @job_type = 'cleanup', @retention= <time>;.

      Nota
      • <time> especifica o período de retenção em minutos.

      • Se o número médio diário de alterações SQL incrementais para uma única tabela exceder 10 milhões, defina <time> como 1440.

    • Operações consecutivas de adição ou exclusão de colunas não são suportadas (mais de duas operações DDL ADD COLUMN ou DROP COLUMN dentro de um minuto). Caso contrário, a tarefa poderá falhar.

    • Não modifique as instâncias de CDC do banco de dados de origem. Caso contrário, a tarefa de migração de dados poderá falhar ou poderá ocorrer perda de dados.

  • Para garantir relatórios precisos de latência para migração incremental de dados, o DTS cria objetos no banco de dados de origem. No modo de análise baseada em logs, o DTS cria um gatilho dts_cdc_sync_ddl, uma tabela de heartbeat dts_sync_progress e uma tabela de armazenamento DDL dts_cdc_ddl_history. No modo de análise baseada em logs híbridos, o DTS cria os mesmos objetos e também ativa o CDC no nível do banco de dados e no nível da tabela. Para tabelas onde o CDC está ativado, a taxa de alteração de dados não deve exceder 1.000 linhas por segundo (RPS).

  • Antes de migrar dados, avalie o desempenho dos bancos de dados de origem e de destino e realize a migração fora dos horários de pico. Durante a migração completa de dados, o DTS consome recursos de leitura e gravação em ambos os bancos de dados, o que pode aumentar a carga deles.

  • Durante a migração completa de dados, operações INSERT simultâneas podem causar fragmentação nas tabelas de destino, de modo que o espaço de armazenamento da tabela no banco de dados de destino pode ser maior do que no banco de dados de origem após a migração.

  • Verifique se a precisão que o DTS usa para migrar colunas do tipo de dados FLOAT ou DOUBLE atende aos seus requisitos de negócios. O DTS usa a função ROUND(COLUMN,PRECISION) para ler valores dessas colunas. Se uma precisão não for explicitamente definida, o DTS migrará valores FLOAT com precisão de 38 dígitos e valores DOUBLE com precisão de 308 dígitos.

  • O DTS tenta retomar uma tarefa com falha por até sete dias. Antes de alternar suas cargas de trabalho de negócios para a instância de destino, encerre ou libere a tarefa de migração. Como alternativa, revogue as permissões de gravação da conta do DTS na instância de destino usando o comando revoke para evitar que uma tarefa retomada sobrescreva os dados de destino.

  • Se uma tarefa de migração incluir migração incremental de dados, você não poderá executar operações de reindexação. Isso pode causar falha na tarefa ou resultar em perda de dados.

    Nota

    Não é possível modificar a chave primária de uma tabela para a qual o CDC está ativado.

  • Se o número de tabelas com CDC ativado em uma única tarefa de migração exceder o valor definido no parâmetro The maximum number of tables for which CDC is enabled that DTS supports., a pré-verificação falhará.

  • Se uma tarefa incluir migração incremental e um único campo em uma tabela com CDC ativado a ser gravada contiver mais de 64 KB de dados, execute o comando exec sp_configure 'max text repl size', -1; para ajustar a configuração do banco de dados de origem antecipadamente.

    Nota

    Por padrão, um trabalho de CDC pode processar um tamanho máximo de dados de 64 KB para um único campo.

  • Quando várias instâncias de migração usam o mesmo banco de dados SQL Server de origem, seus módulos de coleta de dados incrementais operam independentemente.

  • Se uma tarefa falhar, a equipe de suporte do DTS tentará restaurá-la dentro de oito horas. Durante a restauração, eles podem reiniciar a tarefa ou ajustar seus parâmetros.

    Nota

    Apenas os parâmetros da tarefa do DTS são modificados — não os parâmetros do banco de dados. Os parâmetros que podem ser ajustados incluem aqueles listados em {{XREF_4}}.

  • O SQL Server é um banco de dados comercial e de código fechado cujo formato de log pode causar problemas inevitáveis durante o CDC incremental e a análise no DTS. Antes de ativar o DTS para sincronização incremental a partir de uma origem SQL Server em um ambiente de produção, realize testes abrangentes de prova de conceito (POC) que cubram todos os cenários de alteração de negócios, ajustes de esquema e testes de estresse de carga máxima. A consistência entre a lógica do seu ambiente de produção e a fase de POC é essencial para operações estáveis do DTS.

  • O DTS não suporta rollbacks parciais de transação no banco de dados de origem durante a migração incremental, o que pode resultar em perda de operações de rollback.

Casos especiais

Se a origem for uma instância do ApsaraDB RDS for SQL Server, o DTS criará uma conta de sistema chamada rdsdt_dtsacct na instância para migração de dados. Não exclua esta conta nem altere sua senha enquanto a tarefa estiver em execução. Caso contrário, a tarefa poderá falhar. Para obter mais informações, consulte {{XREF_5}}.

Faturamento

Tipo de migração

Taxa de configuração da instância

Taxa de tráfego pela Internet

Migração de esquema e migração completa de dados

Gratuito.

Quando o parâmetro Access Method do banco de dados de destino está definido como Public IP Address, você é cobrado pelo tráfego da Internet. Para obter mais informações, consulte {{XREF_6}}.

Migração incremental de dados

Cobrado. Para obter mais informações, consulte {{XREF_8}}.

Tipos de migração

  • Migração de esquema

    O DTS migra as definições de esquema dos objetos de migração do banco de dados de origem para o banco de dados de destino.

    • Os objetos de esquema suportados incluem esquemas, tabelas, visualizações, funções e procedimentos.

    • Os objetos de esquema não suportados incluem assemblies, service brokers, índices de texto completo, catálogos de texto completo, esquemas distribuídos, funções distribuídas, procedimentos armazenados do Common Language Runtime (CLR), funções escalares do CLR, funções com valor de tabela do CLR, tabelas internas, objetos de sistema e funções agregadas.

    Aviso

    Para migrações entre bancos de dados heterogêneos, os tipos de dados podem não ter mapeamento direto. Avalie cuidadosamente o impacto nos negócios dos mapeamentos de tipos de dados. Para obter mais informações, consulte {{XREF_9}}.

  • Migração completa

    O DTS migra todos os dados históricos dos objetos de migração especificados do banco de dados de origem para o banco de dados de destino.

  • Migração incremental

    Após a conclusão da migração completa, o DTS migra as atualizações incrementais de dados do banco de dados de origem para o banco de dados de destino. A migração incremental permite migrar dados sem interrupções, mantendo suas aplicações autogerenciadas em funcionamento.

Operações SQL para migração incremental

Tipo

Instrução SQL

DML

INSERT, UPDATE e DELETE

Nota
  • O DTS não suporta a migração de instruções UPDATE que atualizam apenas um campo grande.

  • O sistema converte automaticamente uma instrução UPDATE em uma instrução REPLACE INTO ao gravar na instância de destino do AnalyticDB for PostgreSQL. Se uma instrução UPDATE modificar uma chave primária, o sistema a converterá em instruções DELETE e INSERT.

DDL

  • CREATE TABLE

  • ALTER TABLE

    Apenas as operações ADD COLUMN e DROP COLUMN são suportadas.

  • DROP TABLE

  • CREATE INDEX e DROP INDEX

Nota
  • O DTS não suporta a migração de operações DDL que contenham um tipo definido pelo usuário.

  • O DTS não suporta a migração de operações DDL transacionais. Por exemplo, executar uma única instrução SQL que adiciona várias colunas ou contém operações DDL e DML simultaneamente pode causar perda de dados.

  • O DTS não suporta a migração de operações DDL online.

  • O DTS não suporta a migração de operações DDL que usam palavras-chave reservadas como nomes de atributos.

  • O DTS não suporta a migração de operações DDL provenientes de procedimentos armazenados do sistema.

  • O DTS não suporta operações TRUNCATE TABLE.

  • O DTS não suporta operações DDL em tabelas particionadas ou em tabelas cujas definições incluam funções.

Permissões de contas de banco de dados

Banco de dados

Migração de esquema

Migração completa

Migração incremental

Banco de dados SQL Server autogerenciado

Permissão SELECT

Permissão SELECT

sysadmin

Instância do AnalyticDB for PostgreSQL

  • Permissão LOGIN.

  • Permissões SELECT, CREATE, INSERT, UPDATE e DELETE nas tabelas de destino.

  • Permissões CONNECT e CREATE no banco de dados de destino.

  • Permissão CREATE no esquema de destino.

  • Permissão COPY (para operações de cópia em lote baseadas em memória).

Nota

Você também pode usar a conta inicial da instância do AnalyticDB for PostgreSQL.

Para saber mais sobre como criar e conceder permissões para contas de banco de dados, consulte os seguintes tópicos:

Pré-requisitos

Nota

Para realizar uma migração incremental, você deve configurar as definições de log e criar índices clusterizados no seu banco de dados SQL Server autogerenciado antes de configurar a tarefa de migração de dados.

Importante

Se você precisar migrar vários bancos de dados, deverá repetir as etapas 1 a 3 para cada banco de dados. A falha em fazê-lo pode resultar em inconsistência de dados.

  1. Execute o seguinte comando no seu banco de dados SQL Server autogerenciado para alterar o modelo de recuperação do banco de dados de origem para o modelo de recuperação completa.

    BACKUP LOG mytestdata TO DISK='D:\backup\dblog.bak' WITH init;
    GO

    Parâmetros:

    <database_name>: O nome do banco de dados de origem.

    Exemplo:

    BACKUP LOG mytestdata TO DISK='D:\backup\dblog.bak' WITH init;
    GO
  2. Execute o seguinte comando para criar um backup lógico do banco de dados de origem. Você pode pular esta etapa se já existir um backup lógico.

    BACKUP LOG mytestdata TO DISK='D:\backup\dblog.bak' WITH init;
    GO

    Parâmetros:

    • <database_name>: O nome do banco de dados de origem.

    • <physical_backup_device_name>: O caminho e o nome do arquivo para o arquivo de backup.

    Exemplo:

    BACKUP LOG mytestdata TO DISK='D:\backup\dblog.bak' WITH init;
    GO
  3. Execute o seguinte comando para fazer backup do log de transações do banco de dados de origem.

    BACKUP LOG mytestdata TO DISK='D:\backup\dblog.bak' WITH init;
    GO

    Parâmetros:

    • <database_name>: O nome do banco de dados de origem.

    • <physical_backup_device_name>: O caminho e o nome do arquivo para o arquivo de backup.

    Exemplo:

    BACKUP LOG mytestdata TO DISK='D:\backup\dblog.bak' WITH init;
    GO

Procedimento

  1. Acesse a página da lista de tarefas de migração da região de destino usando um dos métodos a seguir.

    Pelo console do DTS

    1. Faça login no console do Data Transmission Service (DTS).

    2. No painel de navegação à esquerda, clique em Data Migration.

    3. No canto superior esquerdo da página, selecione a região onde a instância de migração está localizada.

    Pelo console do DMS

    Nota

    As operações reais podem variar com base no modo e no layout do console do DMS. Para obter mais informações, consulte {{XREF_12}} e {{XREF_13}}.

    1. Faça login no console do Data Management (DMS).

    2. Na barra de menu superior, escolha Data + AI > Data Transmission (DTS) > Data Migration.

    3. À direita de Data Migration Tasks, selecione a região onde a instância de migração está localizada.

  2. Clique em Create Task para acessar a página de configuração da tarefa.

  3. Configure os bancos de dados de origem e de destino.

    Aviso

    Após selecionar as instâncias de origem e de destino, recomendamos que leia atentamente os limites exibidos na parte superior da página. Caso contrário, a tarefa poderá falhar ou poderá ocorrer inconsistência de dados.

    Categoria

    Parâmetro

    Descrição

    N/A

    Task Name

    O DTS gera automaticamente um nome para a tarefa. Recomendamos que especifique um nome descritivo para facilitar a identificação. O nome não precisa ser único.

    Source Database

    Database Type

    Selecione SQL Server.

    Access Method

    Selecione Self-managed Database on ECS.

    Nota

    Se você selecionar um banco de dados autogerenciado no ECS, deverá concluir os preparativos necessários. Para obter mais informações, consulte {{XREF_14}}.

    Instance Region

    Selecione a região onde o banco de dados SQL Server autogerenciado está localizado.

    ECS Instance ID

    Insira o ID da instância do Elastic Compute Service (ECS) que hospeda o banco de dados SQL Server autogerenciado.

    Port Number

    Insira o número da porta de serviço do banco de dados SQL Server autogerenciado. O valor padrão é 1433.

    Database Account

    Insira a conta do banco de dados SQL Server autogerenciado. Para obter informações sobre as permissões necessárias, consulte {{XREF_15}}.

    Database Password

    Insira a senha da conta do banco de dados.

    Encryption

    Selecione Non-encrypted ou SSL-encrypted com base nos seus requisitos de negócios.

    • Se a criptografia SSL estiver desativada para o banco de dados de origem, selecione Non-encrypted.

    • Se a criptografia SSL estiver ativada para o banco de dados de origem, selecione SSL-encrypted. Por padrão, o DTS confia no certificado do servidor.

    Destination Database

    Database Type

    Selecione AnalyticDB for PostgreSQL.

    Access Method

    Selecione Alibaba Cloud Instance.

    Instance Region

    Selecione a região onde a instância de destino do AnalyticDB for PostgreSQL está localizada.

    Instance ID

    Selecione o ID da instância de destino do AnalyticDB for PostgreSQL.

    Database Name

    Insira o nome do banco de dados que contém os objetos de migração na instância de destino do AnalyticDB for PostgreSQL.

    Database Account

    Insira a conta do banco de dados da instância de destino do AnalyticDB for PostgreSQL. Para obter informações sobre as permissões necessárias, consulte {{XREF_16}}.

    Database Password

    Insira a senha da conta do banco de dados.

  4. Após concluir a configuração, clique em Test Connectivity and Proceed na parte inferior da página. Na caixa de diálogo CIDR Blocks of DTS Servers que aparece, clique em Test Connectivity.

    Nota

    Garanta que os segmentos de endereço IP do serviço DTS sejam adicionados automática ou manualmente às configurações de segurança dos bancos de dados de origem e de destino para permitir o acesso dos servidores DTS. Para obter mais informações, consulte {{XREF_17}}.

  5. Configure os objetos da tarefa.

    1. Na página Configure Objects, configure os objetos que deseja migrar.

      Parâmetro

      Descrição

      Migration Types

      • Se você precisar realizar apenas uma migração completa, selecione tanto Schema Migration quanto Full Data Migration.

      • Para realizar uma migração sem tempo de inatividade, selecione Schema Migration, Full Data Migration e Incremental Data Migration.

      Nota
      • Se você não selecionar Schema Migration, deverá garantir que exista um banco de dados e tabelas para receber os dados no banco de dados de destino. Você também pode usar o recurso de mapeamento de nomes de objetos na caixa Selected Objects, conforme necessário.

      • Se você não selecionar Incremental Data Migration, não grave novos dados na instância de origem durante a migração de dados para garantir a consistência dos dados.

      Processing Mode for Existing Destination Tables

      • Precheck and Report Errors: Verifica se existem tabelas com os mesmos nomes no banco de dados de destino. Se não existirem tabelas com os mesmos nomes, a pré-verificação é aprovada. Se existirem tabelas com os mesmos nomes, um erro será relatado durante a pré-verificação e a tarefa de migração de dados não será iniciada.

        Nota

        Se uma tabela no banco de dados de destino tiver o mesmo nome, mas não puder ser facilmente excluída ou renomeada, você poderá alterar o nome da tabela no banco de dados de destino. Para obter mais informações, consulte {{XREF_18}}.

      • Ignore Errors and Proceed: Ignora a verificação de tabelas com os mesmos nomes.

        Aviso

        Selecionar Ignore Errors and Proceed pode causar inconsistência de dados e riscos aos negócios. Por exemplo:

        • Se os esquemas das tabelas forem consistentes e um registro no banco de dados de destino tiver o mesmo valor de chave primária que um registro no banco de dados de origem:

          • Durante a migração completa, o DTS mantém o registro no banco de dados de destino. O registro do banco de dados de origem não é migrado.

          • Durante a migração incremental, o DTS não mantém o registro no banco de dados de destino. O registro do banco de dados de origem sobrescreve o registro no banco de dados de destino.

        • Se os esquemas das tabelas forem inconsistentes, apenas algumas colunas de dados poderão ser migradas ou a migração poderá falhar. Prossiga com cautela.

      SQL Server Incremental Synchronization Mode

      • Log-based Parsing for Non-heap Tables and CDC-based Incremental Synchronization for Heap Tables (Hybrid Log-based Parsing):

        • Vantagens:

          • Suporta cenários que envolvem tabelas heap de origem, tabelas sem chaves primárias, tabelas compactadas ou tabelas com colunas computadas.

          • Oferece alta estabilidade de link. Este modo pode obter instruções DDL completas e suporta uma ampla variedade de cenários DDL.

        • Desvantagens:

          • O DTS cria o gatilho dts_cdc_sync_ddl, a tabela de heartbeat dts_sync_progress e a tabela de armazenamento DDL dts_cdc_ddl_history no banco de dados de origem. Ele também ativa o CDC no nível do banco de dados e o CDC para algumas tabelas.

          • Você não pode executar instruções SELECT INTO, TRUNCATE ou RENAME COLUMN em tabelas com CDC ativado no banco de dados de origem. Você não pode excluir manualmente gatilhos criados pelo DTS no banco de dados de origem.

      • Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported):

        • Vantagem:

          Este modo não é intrusivo para o banco de dados de origem.

        • Desvantagem:

          Este modo não suporta cenários que envolvem tabelas heap de origem, tabelas sem chaves primárias, tabelas compactadas ou tabelas com colunas computadas.

      • Polling and querying CDC instances for incremental synchronization:

        • Vantagens:

          • Suporta migração completa e incremental quando o banco de dados de origem é Amazon RDS for SQL Server, Azure SQL Database, Azure SQL Managed Instance, Azure SQL Server on Virtual Machine ou Google Cloud SQL for SQL Server.

          • Este modo usa o componente CDC nativo do SQL Server para obter dados incrementais, o que melhora a estabilidade da migração incremental e reduz o uso de largura de banda da rede.

        • Desvantagens:

          • A conta do banco de dados de origem usada pela instância do DTS deve ter permissões para ativar o CDC. A migração incremental de dados tem uma latência de cerca de 10 segundos.

          • Ao migrar várias tabelas em vários bancos de dados, você pode encontrar problemas de estabilidade e desempenho.

      Nota

      Este parâmetro está disponível apenas se você selecionar Migration Types para Incremental Data Migration.

      The maximum number of tables for which CDC is enabled that DTS supports.

      Você pode definir um limite para o número de tabelas com CDC ativado para a instância de migração atual com base nos seus requisitos de negócios. O valor padrão é 1.000.

      Nota

      Este parâmetro não está disponível se você definir SQL Server Incremental Synchronization Mode como Incremental Synchronization Based on Logs of Source Database (Heap tables are not supported).

      Select DDL and DML to Sync at the Instance Level

      Selecione as operações SQL para migração incremental de dados no nível da instância. Para obter informações sobre as operações suportadas, consulte {{XREF_19}}.

      Nota

      Para selecionar operações SQL para migração incremental no nível do banco de dados ou da tabela, clique com o botão direito em um objeto de migração na caixa Selected Objects e selecione as operações SQL desejadas.

      Storage Engine Type

      Selecione um mecanismo de armazenamento para as tabelas de destino com base nos seus requisitos de negócios. O valor padrão é Beam.

      Nota

      Este parâmetro está disponível apenas se a instância de destino do AnalyticDB for PostgreSQL tiver uma versão de kernel v7.0.6.6 ou posterior e você tiver selecionado Migration Types para o parâmetro Schema Migration.

      Source Objects

      Na caixa Source Objects, clique nos objetos a serem migrados e, em seguida, clique em Right arrow para movê-los para a caixa Selected Objects.

      Nota

      Este cenário é uma migração entre bancos de dados heterogêneos. Portanto, a granularidade para seleção de objetos de migração é a tabela. Outros objetos, como visualizações, gatilhos e procedimentos armazenados, não são migrados para o banco de dados de destino.

      Selected Objects

      • Para alterar o nome de um único objeto de migração na instância de destino, clique com o botão direito no objeto na caixa Selected Objects. Para obter mais informações, consulte {{XREF_20}}.

      • Para alterar os nomes de vários objetos de migração na instância de destino, clique em Selected Objects no canto superior direito da caixa Batch Edit. Para obter mais informações, consulte {{XREF_21}}.

      Nota
      • Se você usar o recurso de mapeamento de nomes de objetos, outros objetos que dependem do objeto renomeado podem falhar na migração.

      • Para filtrar dados usando condições WHERE, clique com o botão direito em uma tabela a ser migrada no painel Selected Objects e especifique as condições de filtro na caixa de diálogo que aparece. Para obter mais informações, consulte {{XREF_22}}.

      • Para selecionar as operações SQL para migração no nível do banco de dados ou da tabela, clique com o botão direito em um objeto de migração no painel Selected Objects e selecione as operações SQL necessárias na caixa de diálogo que aparece.

    2. Clique em Next: Advanced Settings para configurar parâmetros avançados.

      Parâmetro

      Descrição

      Dedicated Cluster for Task Scheduling

      Por padrão, o DTS agenda tarefas em um cluster compartilhado. Você não precisa selecionar um. Se desejar tarefas mais estáveis, pode adquirir um {{XREF_23}} para executar tarefas de migração do DTS.

      Retry Time for Failed Connections

      Após o início da tarefa de migração, se a conexão com o banco de dados de origem ou de destino falhar, o DTS relatará um erro e começará imediatamente a tentar reconectar. A duração padrão de nova tentativa é de 720 minutos. Você pode personalizar o tempo de nova tentativa para um valor entre 10 e 1440 minutos. Recomendamos definir a duração para mais de 30 minutos. Se o DTS se reconectar aos bancos de dados de origem e de destino dentro da duração especificada, a tarefa de migração será retomada automaticamente. Caso contrário, a tarefa falhará.

      Nota
      • Para várias instâncias do DTS que compartilham a mesma origem ou destino, o tempo de nova tentativa de rede é determinado pela configuração da última tarefa criada.

      • Como você é cobrado pela tarefa durante o período de nova tentativa de conexão, recomendamos personalizar o tempo de nova tentativa com base nas suas necessidades de negócios ou liberar a instância do DTS o mais rápido possível após a liberação das instâncias dos bancos de dados de origem e de destino.

      Retry Time for Other Issues

      Após o início da tarefa de migração, se ocorrer um problema não relacionado à conectividade, como uma exceção de execução DDL ou DML, no banco de dados de origem ou de destino, o DTS relatará um erro e começará imediatamente a tentar novamente a operação. A duração padrão de nova tentativa é de 10 minutos. Você pode personalizar o tempo de nova tentativa para um valor entre 1 e 1440 minutos. Recomendamos definir a duração para mais de 10 minutos. Se as operações relacionadas forem bem-sucedidas dentro da duração de nova tentativa especificada, a tarefa de migração será retomada automaticamente. Caso contrário, a tarefa falhará.

      Importante

      O valor de Retry Time for Other Issues deve ser menor que o valor de Retry Time for Failed Connections.

      Enable Throttling for Full Data Migration

      Durante a migração completa, o DTS consome recursos de leitura e gravação nos bancos de dados de origem e de destino, o que pode aumentar a carga do banco de dados. Se necessário, você pode ativar o limitador de velocidade para a tarefa de migração completa. É possível definir Queries per second (QPS) to the source database, RPS of Full Data Migration e Data migration speed for full migration (MB/s) para reduzir a carga no banco de dados de destino.

      Nota
      • Este item de configuração está disponível apenas se você selecionar Full Data Migration para Migration Types.

      • Você também pode {{XREF_24}} após a instância de migração estar em execução.

      Enable Throttling for Incremental Data Migration

      Se necessário, você também pode optar por definir limites de velocidade para a tarefa de migração incremental. É possível definir RPS of Incremental Data Migration e Data migration speed for incremental migration (MB/s) para reduzir a carga no banco de dados de destino.

      Nota
      • Este item de configuração está disponível apenas se você selecionar Incremental Data Migration para Migration Types.

      • Você também pode {{XREF_25}} após a instância de migração estar em execução.

      Environment Tag

      Você pode selecionar uma tag de ambiente para identificar a instância com base nos seus requisitos de negócios. Isso não é necessário para este exemplo.

      Configure ETL

      Escolha se deseja ativar o recurso de extração, transformação e carregamento (ETL). Para obter mais informações, consulte {{XREF_26}} Valores válidos:

      • Yes: Ativa o recurso ETL. Insira instruções de processamento de dados no editor de código. Para obter mais informações, consulte {{XREF_27}}.

      • No: Desativa o recurso ETL.

      Monitoring and Alerting

      Selecione se deseja definir alertas e receber notificações de alerta com base nas suas necessidades de negócios.

      • No: Não define um alerta.

      • Yes: Configure alertas definindo um {{XREF_28}} e um alert notifications. Se uma migração falhar ou a latência exceder o limiar, o sistema enviará uma notificação de alerta.

    3. Clique em Next: Data Validation para configurar uma tarefa de validação de dados.

      Para obter mais informações sobre o recurso de validação de dados, consulte {{XREF_29}}.

    4. Opcional: Após concluir as configurações anteriores, clique em Next: Configure Database and Table Fields para definir o Type, a Primary Key Column e a Distribution Key para as tabelas a serem migradas na instância de destino do AnalyticDB for PostgreSQL.

      Nota
      • Esta etapa está disponível apenas se você selecionar Migration Types para Schema Migration ao configurar objetos de migração. Para fazer modificações, você pode definir Definition Status como All.

      • Você pode selecionar várias colunas para a Primary Key Column para formar uma chave primária composta. Você também deve selecionar uma ou mais colunas da Primary Key Column para servir como Distribution Key. Para obter mais informações, consulte {{XREF_30}} e {{XREF_31}}.

  6. Salve a tarefa e execute uma pré-verificação.

    • Para visualizar os parâmetros de configuração desta instância ao chamar a operação da API, passe o ponteiro sobre o botão Next: Save Task Settings and Precheck e clique em Preview OpenAPI parameters no balão que aparece.

    • Se você não precisar visualizar ou já tiver terminado de visualizar os parâmetros da API, clique em Next: Save Task Settings and Precheck na parte inferior da página.

    Nota
    • Antes do início da tarefa de migração, o DTS realiza uma pré-verificação. A tarefa só começa após ser aprovada na pré-verificação.

    • Se a pré-verificação falhar, clique em View Details ao lado do item de verificação com falha, corrija o problema conforme indicado e execute a pré-verificação novamente.

    • Se um aviso for relatado durante a pré-verificação:

      • Para itens de verificação que não podem ser ignorados, clique em View Details ao lado do item com falha, corrija o problema conforme indicado e execute a pré-verificação novamente.

      • Para itens de verificação que podem ser ignorados, você pode clicar em Confirm Alert Details, Ignore, OK e Precheck Again para pular o item de alerta e executar a pré-verificação novamente. Se você optar por ignorar um aviso, isso poderá causar problemas como inconsistência de dados e representar riscos aos seus negócios.

  7. Adquira a instância.

    1. Quando a Success Rate for de 100%, clique em Next: Purchase Instance.

    2. Na página Purchase, selecione a especificação de link para a instância de migração de dados. Para obter mais informações, consulte a tabela a seguir.

      Categoria

      Parâmetro

      Descrição

      New Instance Class

      Resource Group Settings

      Selecione o grupo de recursos ao qual a instância pertence. O valor padrão é o grupo de recursos padrão. Para obter mais informações, consulte {{XREF_32}}

      Instance Class

      O DTS fornece especificações de migração com diferentes níveis de desempenho. A especificação do link afeta a velocidade da migração. Você pode selecionar uma especificação com base no seu cenário de negócios. Para obter mais informações, consulte {{XREF_33}}.

    3. Após concluir a configuração, leia e selecione Data Transmission Service (Pay-as-you-go) Service Terms.

    4. Clique em Buy and Start. Na caixa de diálogo OK que aparece, clique em OK.

      Você pode visualizar o progresso da tarefa de migração na página de lista de Data Migration Tasks.

      Nota
      • Se a tarefa de migração não incluir migração incremental, ela será interrompida automaticamente após a conclusão da migração completa. Após a interrupção da tarefa, seu Status mudará para Completed.

      • Se a tarefa de migração incluir migração incremental, ela não será interrompida automaticamente. A tarefa de migração incremental continuará em execução. Enquanto a tarefa de migração incremental estiver em execução, o Status da tarefa será Running.