Todos os produtos
Search
Central de documentação

Data Transmission Service:Sincronizar dados de um cluster do PolarDB for MySQL para uma instância do AnalyticDB for PostgreSQL

Última atualização: Sep 18, 2026

Use o Data Transmission Service (DTS) para replicar dados de um cluster do PolarDB for MySQL em uma instância do AnalyticDB for PostgreSQL para cargas de trabalho de análise. O DTS cria o schema, carrega todos os dados e executa a replicação incremental contínua em uma única tarefa. Para começar, crie uma tarefa de sincronização.

Pré-requisitos

Antes de começar, verifique se você possui:

Ative o log binário em um cluster do PolarDB for MySQL, pois consome espaço de armazenamento e gera cobranças.

Faturamento

Tipo de sincronização

Preço

Sincronização de schema e sincronização completa de dados

Gratuito

Sincronização incremental de dados

Cobrado. Consulte Billing overview.

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

Banco de dados

Permissões necessárias

Como crie e autorize

Cluster de origem do PolarDB for MySQL

Permissões de leitura e gravação para os objetos a serem sincronizados

Crie e gerencie contas de banco de dados e gerencie senhas de contas de banco de dados

Instância de destino do AnalyticDB for PostgreSQL

Permissões de leitura e gravação para o banco de dados de destino

Crie e gerencie usuários e gerencie permissões de usuário. Também é possível usar a conta inicial ou uma conta com permissões RDS_SUPERUSER.

Operações SQL suportadas para sincronização incremental

Tipo de operação

Instruções SQL

DML

INSERT, UPDATE, DELETE. O DTS converte instruções UPDATE em REPLACE INTO ao gravar no destino. Para operações UPDATE em chaves primárias, o DTS converte essas operações em instruções DELETE e INSERT.

DDL

CREATE TABLE, ALTER TABLE, TRUNCATE TABLE, DROP TABLE

Limitações

Banco de dados de origem (source)

  • As tabelas sincronizadas devem ter uma chave primária ou uma restrição UNIQUE com campos exclusivos. Sem isso, dados duplicados podem aparecer no banco de dados de destino.

  • Para sincronização no nível de tabela que exija edição das tabelas (como mapeamento de nomes de colunas), uma única tarefa suporta no máximo 1.000 tabelas. Se exceder esse limite, divida as tabelas em várias tarefas ou configure uma tarefa para sincronizar o banco de dados inteiro.

  • A retenção do log binário deve ter pelo menos 3 dias. Se o DTS não conseguir obter os logs binários, a tarefa poderá falhar, causando, em casos extremos, inconsistência ou perda de dados. Problemas decorrentes de um período de retenção inferior ao necessário não são cobertos pelo Acordo de Nível de service (SLA) do DTS.

  • Não execute operações DDL que modifique chaves primárias ou adicionem comentários à tabela (por exemplo, ALTER TABLE table_name COMMENT='Table comment';) durante a sincronização. Essas operações falharão.

  • Não execute operações DDL que alterem schemas de banco de dados ou tabelas durante a sincronização de schema ou a sincronização completa. A tarefa falhará. Durante a sincronização completa, o DTS consulta o banco de dados de origem, o que cria bloqueios de metadados que podem impedir operações DDL na origem.

  • Se o banco de dados de origem contiver valores de data como 0000-00-00 00:00:00, a tarefa poderá falhar. O DTS converte esses valores para null no destino. Como solução alternativa, altere os valores de origem para 0001-01-01 00:00:00 ou configure o campo de destino para permitir valores nulos.

Outras limitações

  • O DTS suporta apenas a sincronização no nível de tabela.

  • Não há suporte para os seguintes tipos de dados: BIT, VARBIT, GEOMETRY, ARRAY, UUID, TSQUERY, TSVECTOR, TXID_SNAPSHOT.

  • Não há suporte para índices de prefixo. Se a origem possuir índices de prefixo, a sincronização poderá falhar.

  • Não há suporte para sincronização a partir de um nó somente leitura do cluster de origem do PolarDB for MySQL.

  • Não é possível sincronizar tabelas externas do oss a partir da origem.

  • Não há suporte para os seguintes tipos de objeto: PARTITION, VIEW, PROCEDURE, FUNCTION, TRIGGER, FK, INDEX.

  • Não há suporte para tabelas Append-Only (AO) como tabelas de destino.

  • Não há suporte para failover primário/secundário durante a sincronização completa inicial de dados. Se ocorrer um failover, reconfigure a tarefa.

  • Ferramentas de DDL online: não há suporte para pt-online-schema-change, e seu uso causará a falha da tarefa. Para DDL online no modo de tabela temporária ou índices baseados em função em colunas de chave exclusiva, pode ocorrer perda de dados ou falha da tarefa.

  • Se usar o mapeamento de colunas para sincronização parcial de tabela, ou se os schemas das tabelas de origem e destino forem inconsistentes, os dados nas colunas ausentes na tabela de destino serão perdidos.

  • Se a tabela sincronizada tiver uma chave primária, a coluna de chave primária na tabela de destino deverá corresponder à da tabela de origem. Se a tabela não tiver chave primária, a coluna de chave primária na tabela de destino deverá corresponder à chave de distribuição.

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

  • A sincronização completa inicial de dados executa operações INSERT simultâneas, o que causa fragmentação. Como resultado, o tablespace da instância de destino pode ficar maior que o da origem após a conclusão da sincronização completa.

  • Agende a sincronização para horários de menor movimento. A sincronização completa de dados consome recursos de leitura e gravação em ambos os bancos de dados e pode aumentar a carga do sistema.

  • Na sincronização no nível de tabela, não grave dados diferentes dos gerados pelo DTS no banco de dados de destino. Isso pode causar inconsistência de dados entre a origem e o destino.

  • Na sincronização no nível de tabela, não use o pt-online-schema-change para operações DDL online em objetos de sincronização no banco de dados de origem.

  • Na sincronização no nível de tabela, se nenhum dado além dos gerados pelo DTS for gravado no banco de dados de destino, use o Data Management (DMS) para operações DDL online. Consulte Change schemas without locking tables.

  • Se uma tarefa falhar, a equipe de suporte do DTS tentará restaurá-la em até 8 horas. A equipe pode reiniciar a tarefa ou ajustar os parâmetros da tarefa do DTS (não os parâmetros do banco de dados). Os parâmetros ajustáveis estão listados em Modify instance parameters.

Comportamento de resolução de conflitos

Fase

Quando há conflito de chave primária ou exclusiva

Resultado

Sincronização completa de dados

Schemas consistentes: o registro existe no destino com a mesma chave primária/exclusiva

O DTS mantém o registro de destino e ignora o registro de origem

Sincronização incremental

Schemas consistentes: o registro existe no destino com a mesma chave primária/exclusiva

O DTS substitui o registro de destino pelo registro de origem

Qualquer fase

Schemas inconsistentes

A inicialização de dados pode falhar, resultando em falha parcial ou completa da sincronização

Notas de uso

  • O DTS executa periodicamente CREATE DATABASE IF NOT EXISTS \ test\`` no banco de dados de origem para avançar o deslocamento do log binário.

  • Ao usar o DMS ou o gh-ost para alterações de DDL online, configure a opção avançada Copy the temporary table of the Online DDL tool conforme necessário.

Crie uma tarefa de sincronização

A configuração da tarefa consiste em oito etapas: abrir a página da tarefa, conectar os bancos de dados de origem e destino, selecionar objetos de sincronização, defina configurações avançadas, configure a verificação de dados (opcional), configure campos da tabela de destino (opcional), execute a pré-verificação e adquirir a instância.

Etapa 1: Abrir a página de configuração da tarefa

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

  2. Na barra de navegação superior, clique em Data + AI.

  3. No painel de navegação à esquerda, escolha DTS (DTS) > Data Synchronization.

    O caminho de navegação pode variar dependendo do modo e do layout do console do DMS. Consulte Simple mode console e Customize the layout and style of the DMS console . Você também pode ir diretamente para a Data Synchronization Tasks page of the DTS console .
  4. Clique em Create Task.

Etapa 2: Configure bancos de dados de origem e destino

Na página de configuração da tarefa, preencha os seguintes campos:

Categoria Campo Descrição
N/D Task Name O DTS gera um nome automaticamente. Especifique um nome descritivo para facilitar a identificação. O nome não precisa ser exclusivo.
Source Database Select Existing Connection Selecione um registered database instance na lista suspensa para preencher os campos abaixo automaticamente ou configure-os manualmente. No console do DMS, este campo é rotulado como Select a DMS database instance.
Database Type Selecione PolarDB for MySQL.
Access Method Selecione Alibaba Cloud Instance.
Instance Region Selecione a região onde o cluster de origem do PolarDB for MySQL está localizado.
Replicate Data Across Alibaba Cloud Accounts Selecione No se a instância de origem pertencer à conta atual do Alibaba Cloud.
PolarDB Cluster ID Selecione o ID do cluster de origem do PolarDB for MySQL.
Database Account Insira a conta do banco de dados para o cluster de origem. Consulte Permissões necessárias para contas de banco de dados.
Database Password Insira a senha da conta do banco de dados.
Destination Database Select Existing Connection Selecione um registered database instance na lista suspensa para preencher os campos abaixo automaticamente ou configure-os manualmente. No console do DMS, este campo é rotulado como Select a DMS database instance.
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 de destino que receberá os dados sincronizados.
Database Account Insira a conta do banco de dados para a instância de destino. Consulte Permissões necessárias para contas de banco de dados.
Database Password Insira a senha da conta do banco de dados.

Após preencher todos os campos, clique em Test Connectivity and Proceed.

Certifique-se de adicionar os blocos de endereços IP do DTS às configurações de segurança dos bancos de dados de origem e de destino, seja automaticamente pelo DTS ou manualmente. Consulte Add the IP address whitelist of DTS servers .

Etapa 3: Configure objetos de sincronização

Na página Configure Objects, configure as seguintes opções:

Synchronization types

O DTS sempre seleciona Incremental Data Synchronization. Selecione também Schema Synchronization e Full Data Synchronization (selecionada por padrão). Após a pré-verificação, o DTS inicializa a instância de destino com os dados completos dos objetos de origem selecionados, o que serve como linha de base para a sincronização incremental subsequente. Com os três tipos ativados, o DTS:

  1. Copia o schema para o destino.

  2. Carrega um snapshot completo dos objetos de origem selecionados como linha de base.

  3. Aplica alterações incrementais contínuas a partir do log binário.

Objetos e operações

Campo

Descrição

DDL and DML Operations to Be Synchronized

Selecione as operações DDL ou DML a serem sincronizadas no nível da instância. Para selecionar operações de um banco de dados ou tabela específica, clique com o botão direito do mouse no objeto na caixa Selected Objects. Consulte Operações SQL suportadas para sincronização incremental.

Processing Mode of Conflicting Tables

Precheck and Report Errors: Verifica se há tabelas com os mesmos nomes no destino. Se alguma for encontrada, a pré-verificação relata um erro e a tarefa não é iniciada. Se não for possível, exclua ou renomeie a tabela em conflito, use o object name mapping para renomeá-la no destino. Ignore Errors and Proceed: Ignora a verificação de tabelas duplicadas. Use com cautela, pois isso pode causar inconsistência de dados. Consulte Comportamento de resolução de conflitos para obter detalhes.

Storage Engine Type

Selecione o mecanismo de armazenamento para as tabelas de destino. O padrão é Beam. Este campo está disponível apenas se a versão do kernel do AnalyticDB for PostgreSQL de destino for v7.0.6.6 ou posterior e a opção Schema Synchronization estiver selecionada.

Capitalization of Object Names in Destination Instance

Configure a política de maiúsculas e minúsculas para nomes de bancos de dados, tabelas e colunas no destino. O padrão é DTS default policy. Consulte Case policy for destination object names.

Source Objects

Clique nos objetos na caixa Source Objects e, em seguida, clique na seta para a direita para movê-los para a caixa Selected Objects. Selecione bancos de dados ou tabelas como objetos de sincronização.

Selected Objects

Para renomear um único objeto, clique com o botão direito do mouse nele na caixa Selected Objects. Consulte Map a single object name. Para renomear vários objetos em lote, edite em lote clicando em Batch Edit no canto superior direito. Consulte Map multiple object names in bulk. Para filtrar linhas em uma tabela, clique com o botão direito do mouse na tabela e configure as condições de filtro. Consulte Set filter conditions. Se usar o mapeamento de nomes de objetos, a sincronização de objetos dependentes poderá falhar.

Etapa 4: Configure opções avançadas

Clique em Next: Advanced Settings e configure as seguintes opções:

Campo

Descrição

Dedicated Cluster for Task Scheduling

Por padrão, o DTS usa um cluster compartilhado. Para melhorar a estabilidade da tarefa, adquira um cluster dedicado. Consulte What is a DTS dedicated cluster?.

Copy the temporary table of the Online DDL tool that is generated in the source table to the destination database.

Se a origem usar o DMS ou o gh-ost para alterações de DDL online, selecione como o DTS lida com as tabelas temporárias geradas. Yesnotificações de alerta: Sincroniza as tabelas temporárias. Tabelas temporárias grandes podem causar latência na sincronização. No, Adapt to DMS Online DDL: Não sincroniza tabelas temporárias. Sincroniza apenas as instruções DDL originais do DMS. Isso causa bloqueios de tabela no destino. No, Adapt to gh-ost: Não sincroniza tabelas temporárias. Sincroniza apenas as instruções DDL originais do gh-ost. Isso causa bloqueios de tabela no destino. Nota: O DTS não suporta o pt-online-schema-change para alterações de DDL online; seu uso causará a falha da tarefa.

Retry Time for Failed Connections

Se a conexão com a origem ou o destino falhar, o DTS tentará reconectar imediatamente. Padrão: 720 minutos. Intervalo: 10 a 1.440 minutos. Defina como 30 minutos ou mais. Se várias instâncias do DTS compartilharem uma origem ou destino, o DTS aplicará o menor tempo de nova tentativa configurado entre todas as instâncias. O DTS cobra pelo tempo de execução da tarefa durante as novas tentativas.

Retry Time for Other Issues

Se ocorrer um problema que não seja de conexão (por exemplo, um erro de execução de DDL ou DML), o DTS tentará novamente de imediato. Padrão: 10 minutos. Intervalo: 1 a 1.440 minutos. Defina como 10 minutos ou mais. Este valor deve ser menor que o Retry Time for Failed Connections.

Enable Throttling for Full Data Synchronization

Limite a taxa de sincronização completa para reduzir a carga nos bancos de dados. Defina Queries per second (QPS) to the source database, RPS of Full Data Migration e Data migration speed for full migration (MB/s). Disponível apenas quando Full Data Synchronization estiver selecionada. Também é possível adjust the rate enquanto a tarefa está em execução.

Enable Throttling for Incremental Data Synchronization

Limite a taxa de sincronização incremental definindo RPS of Incremental Data Synchronization e Data synchronization speed for incremental synchronization (MB/s).

Environment Tag

Selecione uma tag para identificar a instância de acordo com as necessidades do seu negócio.

Whether to delete SQL operations on heartbeat tables of forward and reverse tasks

Yes: O DTS não grava SQL de heartbeat no banco de dados de origem. A instância do DTS pode apresentar latência. No: O DTS grava SQL de heartbeat no banco de dados de origem. Isso pode interferir em operações como backups físicos e clonagem.

Configure ETL

Ative o recurso de extração, transformação e carregamento (ETL) para transformar dados em trânsito. Yes: Insira instruções de processamento de dados no editor de código. Consulte Configure ETL in a data migration or data synchronization task. No: Desative o ETL. Consulte What is ETL?.

Monitoring and Alerting

Yes: Configure alertas para falhas de tarefa ou latência que exceda um limiar. Defina o limiar de alerta e os contatos de notificação. Consulte Configure monitoring and alerting during task configuration. No: Sem alertas.

Etapa 5: Configure verificação de dados (opcional)

Clique em Data Verification para configurar uma tarefa de verificação de dados. Consulte Configure data verification.

Etapa 6: Configure campos da tabela de destino (opcional)

Clique em Next: Configure Database and Table Fields para defina o Type, Primary Key Column e Distribution Key para cada tabela de destino no AnalyticDB for PostgreSQL.

Esta etapa está disponível apenas quando Schema Synchronization estiver selecionada. Defina Definition Status como All para modificar os campos. Para formar uma chave primária composta, especifique várias colunas em Primary Key Column e, em seguida, selecione uma ou mais dessas colunas como Distribution Key . Consulte Manage tables e Define table distribution .

Etapa 7: Execute a pré-verificação

Clique em Next: Save Task Settings and Precheck.

Para visualizar os parâmetros da API para esta configuração de tarefa, passe o mouse sobre o botão Next: Save Task Settings and Precheck e clique em Preview OpenAPI parameters .

Antes de iniciar uma tarefa de sincronização, o DTS realiza uma pré-verificação. A tarefa é iniciada apenas se a pré-verificação for aprovada.

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

  • Se a pré-verificação retornar avisos:

    • Para avisos não ignoráveis, clique em View Details, corrija o problema e execute a pré-verificação novamente.

    • Para avisos ignoráveis, clique em Confirm Alert Details, depois em Ignore, em seguida em OK e, por fim, em Precheck Again para continuar. Ignorar avisos pode levar a inconsistências de dados. Prossiga com cautela.

Etapa 8: Adquirir e iniciar a instância

Quando a Success Rate atingir 100%, clique em Next: Purchase Instance.

Na página Purchase, selecione o método de faturamento e a classe da instância:

Categoria Parâmetro Descrição
New Instance Class Billing Method Subscription: Pague antecipadamente por um período definido. Custo-benefício para tarefas contínuas e de longo prazo. Opções mensais: 1 a 9 meses. Opções anuais: 1, 2, 3 ou 5 anos. Pagamento conforme o uso: Cobrado por hora pelo uso real. Ideal para tarefas de curto prazo ou de teste.
Resource Group Settings O grupo de recursos da instância. Padrão: default resource group. Consulte What is Resource Management?.
Instance Class Selecione uma especificação de acordo com a taxa de sincronização necessária. Consulte Data synchronization link specifications.
Subscription Duration No modo de assinatura, selecione o período e a quantidade da instância. As opções mensais variam de 1 a 9 meses. As opções anuais incluem 1, 2, 3 ou 5 anos.

Leia e selecione Data Transmission Service (Pay-as-you-go) Service Terms, clique em Buy and Start, salve as configurações e confirme na caixa de diálogo.

Monitore o progresso da tarefa na página Tarefas de Sincronização de Dados.Data Synchronization Tasks page of the new DTS console

Próximos passos

  • Para verificar se os dados foram sincronizados corretamente, configure uma tarefa de verificação de dados. Consulte Configure data verification.

  • Se precisar, modifique objetos de sincronização ou parâmetros da tarefa após o início, e atualize a instância. Consulte Modify instance parameters.