Todos os produtos
Search
Central de documentação

Data Transmission Service:Sincronizar dados de uma instância do ApsaraDB RDS for MySQL para uma instância do PolarDB-X 1.0

Última atualização: Sep 22, 2026

Use o Data Transmission service (DTS) para sincronizar continuamente os dados de uma instância do ApsaraDB RDS for MySQL para uma instância do PolarDB-X 1.0. Esse processo inclui a sincronização completa de dados e a sincronização incremental de dados (INSERT, UPDATE, DELETE).

Visão geral da tarefa: Para configurar uma tarefa de sincronização, conclua estas etapas em ordem:

  1. Prepare a instância e as contas de destino (pré-requisitos)

  2. Configure o log binário na origem

  3. Para iniciar, crie a tarefa de sincronização no DTS ou DMS

  4. Em seguida, execute a pré-verificação e adquira a instância

Pré-requisitos

Antes de começar, certifique-se de que possui:

  • Uma instância de destino do PolarDB-X 1.0 com espaço de armazenamento disponível superior ao espaço utilizado pela instância de origem do RDS MySQL. Ao criar a instância, defina a classe de armazenamento como RDS MySQL. Consulte crie uma instância do PolarDB-X 1.0.

  • Bancos de dados e tabelas previamente criados na instância de destino do PolarDB-X 1.0. A sincronização de schema não é suportada. O DTS não cria o schema de destino automaticamente. Consulte crie um banco de dados e Perform basic SQL operations.

  • Um conjunto de caracteres de origem diferente de utf8mb3. A seleção de dados utf8mb3 para sincronização incremental causa falha na tarefa.

  • Contas de banco de dados com as permissões necessárias. Consulte Permissions required for database accounts.

  • Log binário configurado no banco de dados de origem. Consulte Requisitos de log binário.

Requisitos de log binário

O DTS utiliza logs binários para capturar alterações incrementais. Os requisitos variam conforme a origem seja uma instância do ApsaraDB RDS for MySQL ou um banco de dados MySQL autogerenciado.

ApsaraDB RDS for MySQL

O log binário é ativado por padrão nas instâncias do ApsaraDB RDS for MySQL. Certifique-se de que:

  • O parâmetro binlog_row_image esteja definido como full. Caso contrário, ocorre um erro de pré-verificação e a tarefa não poderá ser iniciada. Consulte Definir parâmetros da instância.

  • Os logs binários locais sejam retidos por pelo menos 3 dias (recomenda-se 7 dias). Se os logs forem purgados antes de o DTS conseguir lê-los, a tarefa falhará. Em casos extremos, pode ocorrer perda ou inconsistência de dados. Tarefas que falham devido à retenção insuficiente de logs não são cobertas pelo SLA do DTS. Para definir o Retention Period dos logs binários locais, consulte exclua logs locais automaticamente.

As instâncias somente leitura do ApsaraDB RDS for MySQL 5.6 não registram logs de transação e não podem ser usadas como banco de dados de origem.

MySQL autogerenciado

Para um banco de dados MySQL autogerenciado, configure os seguintes parâmetros:

Parâmetro

Valor obrigatório

binlog_format

row

binlog_row_image

full

Retenha os logs binários por pelo menos 7 dias. Se os logs forem purgados antes de o DTS conseguir lê-los, a tarefa falhará. Problemas causados pela retenção insuficiente de logs não são cobertos pelo SLA do DTS.

Requisitos adicionais:

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

Banco de dados

Permissões necessárias

Como criar e autorizar

ApsaraDB RDS for MySQL de origem

Leitura e gravação

crie uma conta e modifique as permissões de uma conta

PolarDB-X 1.0 de destino

Leitura e gravação

gerencie contas de banco de dados

Se a conta do banco de dados de origem não tiver sido criada no console do ApsaraDB RDS for MySQL, certifique-se de que ela possua as permissões REPLICATION CLIENT, REPLICATION SLAVE, SHOW VIEW e SELECT.

Faturamento

Tipo de sincronização

Faturamento

Sincronização completa de dados

Gratuito

Sincronização incremental de dados

Cobrado. Consulte Billing overview.

Limites e notas de uso

Limites do banco de dados de origem

  • O servidor onde o banco de dados de origem está implantado deve ter largura de banda de saída suficiente. A largura de banda insuficiente reduz a velocidade de sincronização.

  • As tabelas a serem sincronizadas devem ter uma chave primária ou uma restrição UNIQUE com valores de campo exclusivos. Tabelas sem essas restrições podem gerar dados duplicados no destino.

  • Somente tabelas podem ser selecionadas como objetos de sincronização.

  • Ao usar o mapeamento de nomes de objetos (como nomes de tabelas ou colunas), uma única tarefa suporta no máximo 1.000 tabelas. Para sincronizar mais de 1.000 tabelas com mapeamento de nomes, divida-as em várias tarefas.

  • A classe de armazenamento da instância do PolarDB-X 1.0 deve ser RDS MySQL (um RDS personalizado privado). O PolarDB MySQL não é suportado.

  • Não execute operações DDL durante a sincronização completa de dados, pois isso causa falha na tarefa.

    Durante a fase de sincronização completa, o DTS consulta o banco de dados de origem e pode gerar bloqueios de metadados, o que pode impedir operações DDL na origem.
  • Alterações de dados provenientes de operações não registradas em logs binários não são sincronizadas. Isso inclui a recuperação de dados com backups físicos e operações em cascata.

    Se isso ocorrer, remova o banco de dados ou a tabela afetada dos objetos de sincronização e adicione-a novamente, caso o seu negócio permita. Consulte Modificar objetos de sincronização .
  • Colunas invisíveis (MySQL 8.0.23 e posterior): Se os dados a serem sincronizados contiverem colunas invisíveis, o DTS não conseguirá obter os dados nessas colunas, o que pode causar perda de dados. Execute o seguinte comando para tornar as colunas invisíveis visíveis:

    ALTER TABLE <table_name> ALTER COLUMN <column_name> SET VISIBLE;

    Tabelas sem chave primária geram automaticamente uma chave primária invisível, a qual também deve ser tornada visível. Consulte Colunas invisíveis e Chaves primárias invisíveis geradas.

  • Se a tabela de destino do PolarDB-X 1.0 tiver o particionamento automático ativado (auto_partition=true), cada instrução DDL executada na origem poderá conter apenas uma alter_specification. Caso contrário, o DTS relatará um erro (TDDL-4998: Multi alter specifications when create GSI not support yet). Para executar uma instrução DDL que contenha vários itens alter_specification, divida cada um em uma instrução DDL separada e execute-os um por um. Para mais informações, consulte ALTER TABLE.

Outros limites

  • EncDB (always-confidential): A sincronização completa de dados não é suportada quando o recurso always-confidential (EncDB) está ativado na instância de origem do RDS MySQL.

    Instâncias com Transparent Data Encryption (TDE) ativado suportam sincronização de schema, sincronização completa de dados e sincronização incremental de dados.
  • Se você executar operações DDL online que utilizem tabelas temporárias no banco de dados de origem (como mesclar várias tabelas), os dados poderão ser perdidos no banco de dados de destino ou a instância do DTS poderá falhar.

  • Não use ferramentas como pt-online-schema-change para executar operações DDL online em objetos em sincronização, pois isso causa falha na tarefa.

  • Gravar dados de outras origens no banco de dados de destino durante a sincronização pode causar inconsistência de dados.

  • Avalie o impacto de desempenho nos bancos de dados de origem e de destino antes de iniciar a sincronização. Execute tarefas de sincronização em horários de menor pico, quando possível. 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 servidor.

  • Após a conclusão da sincronização completa de dados, operações INSERT simultâneas podem causar fragmentação nas tabelas de destino. O tablespace utilizado no banco de dados de destino pode ser maior que o do banco de dados de origem.

  • Se uma instância do DTS falhar, a equipe de suporte tentará recuperá-la em até 8 horas. As operações de recuperação podem incluir a reinicialização da instância ou o ajuste de parâmetros da instância do DTS (não do banco de dados). Consulte Modificar parâmetros da instância.

Casos especiais para origens MySQL autogerenciadas

  • Se ocorrer um failover primário/secundário no banco de dados de origem durante a sincronização, a tarefa falhará.

  • A latência de sincronização é calculada pela diferença entre o timestamp atual e o timestamp do último registro de dados sincronizado. Se nenhuma operação DML for executada no banco de dados de origem por um longo período, a latência exibida poderá ser imprecisa. Execute uma operação DML na origem e atualize a leitura de latência.

    Se você optar por sincronizar todo o banco de dados, crie uma tabela de heartbeat. O DTS atualiza ou grava na tabela de heartbeat a cada segundo para manter a leitura de latência precisa.
  • O DTS executa periodicamente CREATE DATABASE IF NOT EXISTS no banco de dados de origem para avançar o offset do log binário.

Casos especiais para origens do ApsaraDB RDS for MySQL

  • Instâncias do ApsaraDB RDS for MySQL que não registram logs de transação, como as instâncias somente leitura do ApsaraDB RDS for MySQL 5.6, não podem ser usadas como banco de dados de origem.

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

Criar uma tarefa de sincronização de dados

Etapa 1: Acessar a página Data Synchronization

Utilize o console do DTS ou o console do DMS.

Console do DTS

  1. Primeiro, acesse o console do DTS.console do DTS

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

  3. No canto superior esquerdo, selecione a região onde reside a instância de sincronização.

Console do DMS

Nota

As operações reais podem variar conforme o modo e o layout do console do DMS. Consulte Modo simples e Personalizar o layout e o estilo do console do DMS.

  1. Acesse o console do DMS.console do DMS

  2. Na barra de navegação superior, passe o ponteiro do mouse sobre Data + AI e escolha DTS (DTS) > Data Synchronization.

  3. Na lista suspensa à direita de Data Synchronization Tasks, selecione a região onde reside a instância de sincronização.

Etapa 2: Configurar bancos de dados de origem e de destino

  1. Clique em Create Task.

  2. Na página de configuração da tarefa, defina os seguintes parâmetros.

Geral

Parâmetro

Descrição

Task Name

O DTS gera um nome de tarefa automaticamente. Especifique um nome descritivo para facilitar a identificação. O nome não precisa ser exclusivo.

Banco de dados de origem

Parâmetro

Valor

Select Existing Connection

Selecione uma instância de banco de dados registrada na lista suspensa. O DTS preenche os parâmetros restantes automaticamente. Se a instância não estiver registrada no DTS, configure os parâmetros abaixo manualmente. No console do DMS, selecione a instância na lista Select a DMS database instance.

Database Type

MySQL

Access Method

Alibaba Cloud Instance

Instance Region

A região onde reside a instância de origem do ApsaraDB RDS for MySQL

Replicate Data Across Alibaba Cloud Accounts

No (para instâncias na conta atual)

RDS Instance ID

O ID da instância de origem do ApsaraDB RDS for MySQL

Database Account

A conta da instância de origem. Consulte Permissions required for database accounts.

Database Password

A senha da conta do banco de dados

Encryption

Non-encrypted ou SSL-encrypted. Para usar a criptografia ssl, ative-a na instância RDS antes de configurar esta tarefa. Consulte Usar um certificado de cloud para ativar a criptografia SSL.

Banco de dados de destino

Parâmetro

Valor

Select Existing Connection

Selecione uma instância de banco de dados registrada na lista suspensa. O DTS preenche os parâmetros restantes automaticamente. Se a instância não estiver registrada no DTS, configure os parâmetros abaixo manualmente. No console do DMS, selecione a instância na lista Select a DMS database instance.

Database Type

PolarDB-X 1.0

Access Method

Alibaba Cloud Instance

Instance Region

A região onde reside a instância de destino do PolarDB-X 1.0

Instance ID

O ID da instância de destino do PolarDB-X 1.0

Database Account

A conta da instância de destino. Consulte Permissions required for database accounts.

Database Password

A senha da conta do banco de dados

  1. Clique em Test Connectivity and Proceed.

Certifique-se de que os blocos CIDR dos servidores DTS estejam adicionados às configurações de segurança dos bancos de dados de origem e de destino. Consulte Adicionar endereços IP do servidor DTS a uma lista de permissões . Se o banco de dados de origem ou de destino for autogerenciado e não acessado por meio de Alibaba Cloud Instance , clique em Test Connectivity na caixa de diálogo CIDR Blocks of DTS Servers .

Etapa 3: Configurar objetos de sincronização

Na etapa Configure Objects, defina os seguintes parâmetros.

Parâmetro

Descrição

Synchronization Types

Incremental Data Synchronization é selecionada por padrão. Opcionalmente, selecione Full Data Synchronization. Não é possível selecionar Schema Synchronization. Crie o schema de destino manualmente antes de iniciar a tarefa. Após a aprovação da pré-verificação, o DTS sincroniza os dados históricos da origem como base para a sincronização incremental.

Processing Mode of Conflicting Tables

Precheck and Report Errors: verifica se o destino contém tabelas com nomes idênticos aos da origem. Se existirem nomes idênticos, um erro será retornado durante a pré-verificação e a tarefa não poderá ser iniciada. Para lidar com conflitos de nomenclatura, use o mapeamento de nomes de objetos para renomear as tabelas sincronizadas. Consulte Mapear nomes de objetos. <br><br> Ignore Errors and Proceed: ignora a pré-verificação de nomes de tabelas idênticos. >

Aviso

Esta opção pode causar inconsistência de dados. Se a origem e o destino compartilharem o mesmo schema e um registro no destino tiver a mesma chave primária ou exclusiva de um registro da origem, o DTS retém o registro de destino existente durante a sincronização completa e o sobrescreve durante a sincronização incremental. Se os schemas forem diferentes, a inicialização poderá falhar ou apenas colunas parciais serão sincronizadas.

Capitalization of object names in destination instance

Controla a capitalização (caixa alta/baixa) de nomes de bancos de dados, tabelas e colunas no destino. Padrão: DTS default policy. Consulte Especificar a capitalização de nomes de objetos na instância de destino.

Source Objects

Selecione uma ou mais tabelas e clique no ícone de seta para movê-las para Selected Objects. Somente tabelas podem ser selecionadas como objetos de sincronização.

Selected Objects

Clique com o botão direito em um objeto para renomeá-lo (objeto único) ou clique em Batch Edit para renomear vários objetos de uma vez. Consulte Mapear nomes de objetos. Clique com o botão direito em uma tabela para selecionar operações DML específicas para sincronização incremental (INSERT, UPDATE, DELETE) ou para definir condições de filtro WHERE. Consulte Filter task data with an SQL condition. Se você usar o mapeamento de nomes de objetos, outros objetos dependentes do objeto mapeado poderão falhar na sincronização.

Clique em Next: Advanced Settings.

Etapa 4: Definir configurações avançadas

Parâmetro

Descrição

Dedicated Cluster for Task Scheduling

Por padrão, o DTS agenda a tarefa no cluster compartilhado. Adquira um cluster dedicado para melhorar a estabilidade da sincronização. Consulte O que é um cluster dedicado do DTS.

Retry Time for Failed Connections

Tempo durante o qual o DTS tenta reconectar após uma falha de conexão. Valores válidos: 10 a 1.440 minutos. Padrão: 720 minutos. Recomendamos definir este parâmetro com um valor superior a 30 minutos. Se o DTS reconectar dentro dessa janela, a tarefa será retomada; caso contrário, ela falhará. Se várias tarefas compartilharem o mesmo banco de dados de origem ou de destino, o menor tempo de nova tentativa entre essas tarefas entrará em vigor. O DTS cobra pela instância durante o período de nova tentativa.

Retry Time for Other Issues

Tempo durante o qual o DTS tenta novamente após falhas de operação DDL ou DML. Valores válidos: 1 a 1.440 minutos. Padrão: 10 minutos. Recomendamos definir este parâmetro com um valor superior a 10 minutos. Este valor deve ser menor que Retry Time for Failed Connections.

Enable Throttling for Full Data Synchronization

Limita o uso de recursos de leitura e gravação durante a sincronização completa de dados. Configure QPS (queries per second) 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.

Enable Throttling for Incremental Data Synchronization

Limita o uso de recursos durante a sincronização incremental. Configure RPS of Incremental Data Synchronization e Data synchronization speed for incremental synchronization (MB/s).

Environment Tag

Uma tag opcional para identificar a instância pelo tipo de ambiente.

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

Controla se o DTS grava operações SQL de heartbeat no banco de dados de origem. Yesconfigurações de notificação de alerta: não grava SQL de heartbeat; a instância do DTS pode exibir um valor de latência. No: grava SQL de heartbeat; isso pode afetar recursos como backup físico e clonagem do banco de dados de origem.

Configure ETL

Indica se deve ativar o recurso de extração, transformação e carga (ETL). Yes: configure o ETL inserindo instruções de processamento de dados no editor de código. Consulte Configurar ETL em uma tarefa de migração de dados ou sincronização de dados. No: o ETL fica desativado. Consulte O que é ETL?

Monitoring and Alerting

Indica se deve configurar alertas. Yes: defina o limiar de alerta e os contatos de notificação. O DTS os notificará se a tarefa falhar ou se a latência exceder o limiar. Consulte Configurar monitoramento e alertas ao criar uma tarefa do DTS. No: não há alertas.

Etapa 5: Executar a pré-verificação

Agora, salve as configurações clicando em Next: Save Task Settings and Precheck.

Para a API, visualize os parâmetros desta configuração de tarefa passando o mouse sobre Next: Save Task Settings and Precheck e clique em Preview OpenAPI parameters .

A tarefa executa uma pré-verificação antes de iniciar. Ela só poderá ser iniciada após a aprovação da pré-verificação.

  • Se algum item falhar, clique em View Details ao lado do item com falha, corrija o problema e clique em Precheck Again.

  • Se um item acionar um alerta que possa ser ignorado, clique em Confirm Alert Details e, em seguida, clique em Ignore > OK > Precheck Again. Ignorar itens de alerta pode causar inconsistência de dados.

Etapa 6: Adquirir a instância

  1. Aguarde até que a Success Rate atinja 100% e clique em Next: Purchase Instance.

  2. Na página de compra, configure os seguintes parâmetros.

Parâmetro

Descrição

Billing Method

Subscription: pague antecipadamente por uma duração fixa. Mais econômico para uso a longo prazo. Pay-as-you-go (pagamento conforme o uso): cobrado por hora, adequado para uso a curto prazo. Libere a instância quando não for mais necessária para interromper o faturamento.

Resource Group Settings

O grupo de recursos para a instância de sincronização. Padrão: default resource group. Consulte O que é o Resource Management?

Instance Class

A camada de desempenho da sincronização. Consulte Classes de instância de instâncias de sincronização de dados.

Subscription Duration

Disponível apenas para o método de faturamento Subscription. Valores válidos: 1 a 9 meses, ou 1, 2, 3 ou 5 anos.

  1. Leia e selecione Data Transmission Service (Pay-as-you-go) Service Terms.

  2. Clique em Buy and Start e, em seguida, clique em OK e confirme a operação.

A tarefa aparecerá na lista de tarefas. Monitore o progresso por lá.