Todos os produtos
Search
Central de documentação

Data Transmission Service:Migrar um SQL Server auto-gerenciado para o RDS PostgreSQL

Última atualização: Oct 15, 2026

O Data Transmission Service (DTS) permite migrar dados de um banco de dados SQL Server para uma instância ApsaraDB RDS for PostgreSQL. Este tópico utiliza um banco de dados SQL Server auto-gerenciado com acesso público habilitado como banco de origem e descreve as etapas necessárias.

Importante

Atualmente, esse recurso é suportado apenas nas regiões China (Qingdao), China (Beijing) e China (Hong Kong).

Pré-requisitos

  • Adicione os blocos CIDR dos servidores DTS às configurações de segurança (como regras de grupo de segurança, regras de firewall ou listas de permissões) do banco de dados SQL Server auto-gerenciado para permitir o acesso dos servidores DTS.

  • Crie uma instância de destino ApsaraDB RDS for PostgreSQL cujo espaço de armazenamento seja maior que o espaço utilizado pelo banco de dados SQL Server de origem. Para obter informações sobre como criar uma instância, consulte Quickly create an ApsaraDB RDS for PostgreSQL instance.

    Nota

    Para verificar as versões suportadas pelos bancos de dados de origem e de destino, consulte Migration scenarios.

  • Crie um banco de dados na instância de destino ApsaraDB RDS for PostgreSQL para receber os dados. Para obter informações sobre como criar um banco de dados, consulte Create a database.

  • Se a instância de origem apresentar qualquer uma das condições a seguir, recomendamos dividir a migração em várias tarefas:

    • Os dados a serem migrados pertencem a múltiplos schemas.

    • 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 habilitar o Change Data Capture (CDC) em mais de 1.000 tabelas.

Observações de uso

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

  • 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 suporta a realização de migração completa em múltiplas etapas; a migração completa deve ser concluída em uma única operação. Caso precise 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 única, 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 pode migrar no máximo 1.000 tabelas. Se exceder esse limite, a tarefa falhará ao ser enviada. Divida as tabelas em várias tarefas ou configure uma tarefa para migrar o banco de dados inteiro.

  • 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 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 schema diferentes, para o mesmo banco de dados de destino dentro de uma única tarefa.

  • Se realizar migração incremental de dados, os logs de transação devem atender aos seguintes requisitos:

    • O registro de transações deve estar habilitado, 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, reduza o período de retenção para mais de 24 horas. Caso contrário, a tarefa do DTS poderá falhar devido à indisponibilidade dos 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 habilitar 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 auto-gerenciado, o proprietário do banco de dados deve ser sa. Se o banco de dados de origem for uma instância 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, deve ser SQL Server 2008 ou posterior.

    • Se o banco de dados de origem for Standard Edition, 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 possui 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 schema 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 realizar 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 origem e de destino ficarão inconsistentes. Para garantir consistência de dados em tempo real, selecione Migração de Schema, 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 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 mais informações, consulte Disable TDE.

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

    Nota

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

  • No modo de análise baseada em logs híbrida, o banco de dados de origem não suporta operações consecutivas de adição ou remoção de colunas com intervalo inferior a 10 minutos. Por exemplo, se executar as seguintes instruções SQL 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 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, habilite o parâmetro READ_COMMITTED_SNAPSHOT para o banco de dados de origem a fim de evitar que a contenção de bloqueios compartilhados afete as gravações de dados. Caso contrário, pode ocorrer inconsistência de dados ou falha na tarefa. Problemas causados pela não habilitaçã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 com o comando CREATE TYPE.

    Importante

    Este cenário é uma migração de banco de dados heterogêneo. Tipos de dados incompatíveis podem causar falhas na tarefa ou perda de dados. Avalie cuidadosamente o impacto dos mapeamentos de tipos de dados em seu negócio. Para mais informações, consulte Data type mappings between heterogeneous databases.

  • É possível selecionar objetos de migração apenas no nível de tabela. Todas as tabelas selecionadas devem pertencer ao mesmo schema. Caso contrário, pode ocorrer inconsistência de dados ou falha na tarefa.

  • Se 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íbrida.

  • Se 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 job de CDC no banco de dados de origem esteja em execução conforme 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, habilite 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 habilita 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 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 DTS deve ter permissões para habilitar o CDC. Uma conta com a função sysadmin é necessária para habilitar o CDC no nível do banco de dados. Uma conta privilegiada é necessária para habilitar 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 habilitado para todas as especificações. Para bancos de dados adquiridos com base no modelo DTU, o CDC só pode ser habilitado para camadas de service S3 ou superior.

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

      • Não é possível habilitar 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 habilita 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 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 remoçã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 CDC do banco de dados de origem. Caso contrário, a tarefa de migração de dados poderá falhar ou ocorrer perda de dados.

  • Para garantir relatórios precisos de latência na 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íbrida, o DTS cria os mesmos objetos e também habilita o CDC no nível do banco de dados e no nível da tabela. Para tabelas onde o CDC está habilitado, a taxa de alteração de dados não deve exceder 1.000 linhas por segundo (RPS).

  • Durante uma 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. Antes de iniciar, avalie o desempenho de ambos os bancos de dados e execute a migração fora do horário de pico, por exemplo, quando a carga da cpu estiver abaixo de 30%.

  • Durante uma migração completa, operações INSERT simultâneas podem causar fragmentação nas tabelas de destino, fazendo com que as tabelas no banco de dados de destino utilizem mais espaço de armazenamento do que as do banco de origem após a migração.

  • 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. Alternativamente, revogue as permissões de gravação da conta 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, não será possível realizar 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á habilitado.

  • Se o número de tabelas com CDC habilitado 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 habilitado a ser gravado 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 job 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 DTS são modificados — não os parâmetros do banco de dados. Os parâmetros que podem ser ajustados incluem aqueles listados em Modify instance parameters.

  • 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 habilitar 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 schema 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.

  • Durante a migração incremental, o DTS não suporta rollbacks parciais de transação no banco de dados de origem, o que pode fazer com que sejam ignorados.

Casos especiais

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

Faturamento

Tipo de migração

Taxa de configuração de link

Taxa de tráfego de internet

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

Gratuito.

Gratuito neste exemplo.

Nota

Você será cobrado quando o Access Method da instância do banco de dados de destino for Public IP Address. Para mais informações, consulte Billing overview.

Migração incremental de dados

Cobrado. Para mais informações, consulte Billing overview.

Operações SQL que suportam migração incremental

Tipo de operação

Instruções SQL

DML

INSERT, UPDATE, DELETE

Nota

Instruções UPDATE que atualizam apenas campos grandes não são suportadas.

Permissões necessárias para contas de banco de dados

Banco de dados

Permissões necessárias

Métodos de criação e autorização de conta

SQL Server auto-gerenciado de origem

Permissão sysadmin.

CREATE USER e Gerenciamento de permissões de usuário

Instância de destino ApsaraDB RDS for PostgreSQL

Permissão de proprietário (conta de autorização) do banco de dados de destino.

Create an account e Create a database.

Pré-requisitos

Nota

Para realizar uma migração incremental, configure as definições de log e crie índices clusterizados no seu banco de dados SQL Server auto-gerenciado antes de configurar a tarefa de migração de dados.

Importante

Se precisar migrar vários bancos de dados, repita as etapas 1 a 3 para cada banco de dados. A falta dessa ação pode resultar em inconsistência de dados.

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

    use master;
    GO
    ALTER DATABASE <database_name> SET RECOVERY FULL WITH ROLLBACK IMMEDIATE;
    GO

    Parâmetros:

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

    Exemplo:

    use master;
    GO
    ALTER DATABASE mytestdata SET RECOVERY FULL WITH ROLLBACK IMMEDIATE;
    GO
  2. Execute o seguinte comando para criar um backup lógico do banco de dados de origem. Pule esta etapa se já existir um backup lógico.

    BACKUP DATABASE <database_name> TO DISK='<physical_backup_device_name>';
    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 DATABASE mytestdata TO DISK='D:\backup\dbdata.bak';
    GO
  3. Execute o seguinte comando para fazer backup do log de transações do banco de dados de origem.

    BACKUP LOG <database_name> to DISK='<physical_backup_device_name>' 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 para a região de destino usando um dos seguintes métodos.

    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 layout do console DMS. Para mais informações, consulte Simple mode console e Customize the layout and style of the DMS console.

    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.

    Categoria

    Parâmetro

    Descrição

    Nenhum

    Task Name

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

    Source Database

    Select Existing Connection

    • Para usar uma instância de banco de dados que foi added to the system (criada ou salva), selecione a instância desejada na lista suspensa. As informações do banco de dados abaixo serão configuradas automaticamente.

      Nota

      No console DMS, este parâmetro é chamado Select a DMS database instance..

    • Se você não registrou a instância de banco de dados no sistema, ou não precisa usar uma instância registrada, configure manualmente as informações do banco de dados abaixo.

    Database Type

    Selecione SQL Server.

    Access Method

    Selecione com base no local de implantação do banco de dados de origem. Neste exemplo, selecione Public IP Address.

    Nota

    Se selecionar um método de acesso diferente para um banco de dados auto-gerenciado, você deve concluir os preparativos correspondentes. Para mais informações, consulte Preparation overview.

    Instance Region

    Selecione a região à qual o banco de dados SQL Server de origem pertence.

    Domain Name or IP

    Insira o endereço de acesso do banco de dados SQL Server de origem.

    Port Number

    Insira a porta de service do banco de dados SQL Server de origem. A porta padrão é 1433.

    Database Account

    Insira a conta do banco de dados SQL Server de origem. Para informações sobre as permissões necessárias, consulte Permissions required for database accounts.

    Database Password

    Insira a senha da conta do banco de dados.

    Encryption

    Selecione Non-encrypted ou SSL-encrypted com base nos requisitos do seu negócio.

    • 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

    Select Existing Connection

    • Para usar uma instância de banco de dados que foi added to the system (criada ou salva), selecione a instância desejada na lista suspensa. As informações do banco de dados abaixo serão configuradas automaticamente.

      Nota

      No console DMS, este parâmetro é chamado Select a DMS database instance..

    • Se você não registrou a instância de banco de dados no sistema, ou não precisa usar uma instância registrada, configure manualmente as informações do banco de dados abaixo.

    Database Type

    Selecione PostgreSQL.

    Access Method

    Selecione Alibaba Cloud Instance.

    Instance Region

    Selecione a região da instância de destino ApsaraDB RDS for PostgreSQL.

    Instance ID

    Selecione o ID da instância de destino ApsaraDB RDS for PostgreSQL.

    Database Name

    Insira o nome do banco de dados usado para receber dados na instância de destino ApsaraDB RDS for PostgreSQL.

    Database Account

    Insira a conta do banco de dados da instância de destino ApsaraDB RDS for PostgreSQL. Para informações sobre as permissões necessárias, consulte Permissions required for database accounts.

    Database Password

    Insira a senha da conta do banco de dados.

    Encryption

    Especifica se deve criptografar a conexão com o banco de dados de origem. Configure este parâmetro com base nos requisitos do seu negócio. Neste exemplo, Non-encrypted está selecionado.

    Se desejar estabelecer uma conexão criptografada por SSL com o banco de dados de origem, execute as seguintes etapas: Selecione SSL-encrypted, faça upload do CA Certificate, Client Certificate e Private Key of Client Certificate conforme necessário, e então especifique a Private Key Password of Client Certificate.

    Nota
    • Se definir Encryption como SSL-encrypted para um banco de dados PostgreSQL auto-gerenciado, você deve fazer upload do CA Certificate.

    • Se quiser usar o certificado de cliente, você deve fazer upload do Client Certificate e da Private Key of Client Certificate e especificar a Private Key Password of Client Certificate.

    • Para obter informações sobre como configurar a criptografia SSL para uma instância ApsaraDB RDS for PostgreSQL, consulte SSL encryption.

  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 service 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 mais informações, consulte Add DTS server IP addresses to a whitelist.

  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 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 não selecionar Schema Migration, garanta que exista um banco de dados e tabelas para receber os dados no banco de dados de destino. Também é possível usar o recurso de mapeamento de nomes de objetos na caixa Selected Objects conforme necessário.

      • Se 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.

      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 gama 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 habilita o CDC no nível do banco de dados e o CDC para algumas tabelas.

          • Não é possível executar instruções SELECT INTO, TRUNCATE ou RENAME COLUMN em tabelas com CDC habilitado no banco de dados de origem. Não é possível 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 de rede.

        • Desvantagens:

          • A conta do banco de dados de origem usada pela instância DTS deve ter permissões para habilitar 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 quando a seleção para Migration Types inclui Incremental Data Migration.

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

      Defina um limite para o número de tabelas com CDC habilitado para a instância de migração atual com base nos requisitos do seu negócio. 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).

      Processing Mode of Conflicting 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 é relatado durante a pré-verificação e a tarefa de migração de dados não inicia.

        Nota

        Se uma tabela no banco de dados de destino tiver o mesmo nome, mas não puder ser facilmente excluída ou renomeada, altere o nome da tabela no banco de dados de destino. Para mais informações, consulte Object name mapping.

      • 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 schemas 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 schemas das tabelas forem inconsistentes, apenas algumas colunas de dados poderão ser migradas, ou a migração poderá falhar. Prossiga com cautela.

      Capitalization of Object Names in Destination Instance

      Configure a política de diferenciação de maiúsculas e minúsculas para os nomes dos objetos migrados, como bancos de dados, tabelas e colunas, na instância de destino. Por padrão, DTS default policy está selecionado. Também é possível optar por manter a diferenciação de maiúsculas e minúsculas consistente com a política padrão do banco de dados de origem ou de destino. Para mais informações, consulte Case sensitivity of object names in the destination database.

      Source Objects

      No painel Source Objects, clique nas tabelas que deseja migrar e clique em right arrow para movê-las para o painel Selected Objects.

      Importante

      A granularidade dos objetos que podem ser selecionados para migração é tabelas, e todas as tabelas a serem migradas devem pertencer ao mesmo schema. Caso contrário, pode ocorrer inconsistência de dados ou falha na tarefa.

      Selected Objects

      Por padrão, o nome do schema de origem é usado como nome do schema de destino, e o nome da tabela de origem é usado como nome da tabela de destino.

      Se quiser modificar o nome do schema que recebe dados na instância de destino ApsaraDB RDS for PostgreSQL, no painel Selected Objects, clique com o botão direito no schema da tabela a ser migrada. Na caixa de diálogo Edit Schema que aparece, modifique o Schema Name.

      Nota
      • Também é possível clicar com o botão direito na tabela a ser migrada no painel Selected Objects para modificar o nome da tabela de destino ou os nomes das colunas, ou definir uma cláusula WHERE para filtrar dados. Para mais informações, consulte Filter task data with an SQL condition e Object name mapping.

      • Para selecionar operações SQL para migração incremental, clique com o botão direito no objeto a ser migrado no painel Selected Objects e selecione as operações SQL necessárias na caixa de diálogo que aparece.

      • Para remover um objeto de migração já selecionado, no painel Selected Objects, clique no objeto a ser migrado e clique em image para movê-lo para o painel Source Objects.

    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. Não é necessário selecionar um. Se desejar tarefas mais estáveis, adquira um dedicated cluster 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 iniciará imediatamente uma nova tentativa de conexão. A duração padrão de nova tentativa é de 720 minutos. Personalize 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 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 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 necessidades do seu negócio, ou liberar a instância DTS o mais rápido possível após a liberação das instâncias de banco 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 que não seja de 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 iniciará imediatamente uma nova tentativa da operação. A duração padrão de nova tentativa é de 10 minutos. Personalize 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, ative o limitador de taxa para a tarefa de migração completa. Defina 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.

      • Também é possível adjust the full migration speed após a instância de migração estar em execução.

      Enable Throttling for Incremental Data Migration

      Se necessário, também é possível definir limites de velocidade para a tarefa de migração incremental. Defina 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.

      • Também é possível adjust the incremental migration speed após a instância de migração estar em execução.

      Environment Tag

      Selecione uma tag de ambiente para identificar a instância com base nas necessidades do seu negócio. Este exemplo não requer uma tag.

      Configure ETL

      Escolha se deseja habilitar o recurso de extração, transformação e carregamento (ETL). Para mais informações, consulte What is ETL? Valores válidos:

      Monitoring and Alerting

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

      • No: Não define um alerta.

      • Yes: Configure alertas definindo um alert threshold e 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 mais informações sobre o recurso de validação de dados, consulte Configure data validation.

  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 de api, passe o ponteiro sobre o botão Next: Save Task Settings and Precheck e clique em Preview OpenAPI parameters na dica que aparecer.

    • Se 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ó inicia após passar 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 com base no aviso 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 com base no aviso e execute a pré-verificação novamente.

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

  7. Adquira uma instância.

    1. Quando a Success Rate for 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 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 é default resource group. Para mais informações, consulte What is resource management?

      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. Selecione uma especificação com base no seu cenário de negócios. Para mais informações, consulte Data migration link specifications.

    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.

      Visualize o progresso da tarefa de migração na página de lista 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 muda para Completed.

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