Todos os produtos
Search
Central de documentação

Data Transmission Service:Sincronizar dados do PolarDB-X 1.0 para o PolarDB for MySQL

Última atualização: Aug 27, 2026

Use o Data Transmission Service (DTS) para sincronizar dados incrementais em tempo real de uma instância PolarDB-X 1.0 para um cluster PolarDB for MySQL.

Pré-requisitos

  • Crie uma instância PolarDB-X 1.0. Para obter instruções, consulte Create a PolarDB-X 1.0 instance e Create a database.

    Nota

    A instância PolarDB-X 1.0 deve usar o ApsaraDB RDS for MySQL como tipo de armazenamento. Isso inclui instâncias RDS personalizadas e adquiridas separadamente. O PolarDB for MySQL não é compatível.

  • Crie um cluster de destino PolarDB for MySQL. Para mais informações, consulte Custom purchase e Purchase a subscription cluster.

  • O cluster de destino deve ter mais espaço de armazenamento disponível do que o armazenamento utilizado pela instância de origem.

Observações de uso

Nota
  • Durante a sincronização de esquema, o DTS sincroniza chaves estrangeiras do banco de dados de origem para o banco de dados de destino.

  • Nas fases de sincronização completa e incremental de dados, o DTS desativa temporariamente a verificação de restrições e operações em cascata de chaves estrangeiras no nível da sessão. Caso ocorram atualizações ou exclusões em cascata no banco de dados de origem durante a sincronização, podem surgir inconsistências nos dados.

Tipo

Descrição

Limitações do banco de dados de origem

  • As tabelas a serem sincronizadas devem possuir uma chave primária ou uma restrição única para garantir que cada linha seja exclusiva e evitar dados duplicados no banco de dados de destino. Se uma tabela tiver apenas uma restrição única, a sincronização de esquema não será compatível com essa tabela. Recomendamos o uso de uma chave primária. A sincronização de tabelas com índices secundários não é compatível.

  • Ao sincronizar dados no nível da tabela e executar operações de edição, como mapeamento de nomes de colunas, uma única tarefa de sincronização aceita no máximo 5.000 tabelas. Se ultrapassar esse limite, divida as tabelas em várias tarefas ou sincronize todo o banco de dados. Caso contrário, pode ocorrer um erro de solicitação ao enviar a tarefa.

  • Os logs binários das instâncias ApsaraDB RDS for MySQL anexadas à instância de origem PolarDB-X 1.0 devem atender aos seguintes requisitos:

    • O recurso de log binário deve estar ativado e o parâmetro binlog_row_image deve ser definido como full. Caso contrário, a pré-verificação falhará e a tarefa de sincronização de dados não poderá ser iniciada.

    • Para uma tarefa de sincronização incremental de dados, retenha os logs binários do banco de dados de origem por pelo menos 24 horas. Para uma tarefa que inclui sincronização completa e incremental, os logs binários devem ser retidos por pelo menos 7 dias. É possível reduzir o período de retenção para 24 horas após a conclusão da sincronização completa dos dados. Se o DTS não conseguir obter os logs binários devido a um período de retenção muito curto, a tarefa poderá falhar. Em casos extremos, podem ocorrer inconsistência ou perda de dados. Problemas causados por um período de retenção de logs binários inferior ao exigido pelo DTS não são cobertos pelo Acordo de Nível de Serviço (SLA) do DTS.

  • Limitações sobre operações no banco de dados de origem:

    • Se você alterar o tipo de rede da instância PolarDB-X 1.0 durante a sincronização de dados, atualize as informações de conexão do link de sincronização.

    • Durante a sincronização, não execute operações na instância de origem como dimensionamento (por exemplo, dimensionar sua instância ApsaraDB RDS for MySQL anexada ou alterar a distribuição de tabelas físicas correspondentes a tabelas lógicas no ApsaraDB RDS for MySQL, mesmo que a instância ApsaraDB RDS for MySQL não seja dimensionada), migração de tabelas quentes, alteração da chave de shard ou modificações DDL. Caso contrário, a tarefa de sincronização de dados falhará ou ocorrerão inconsistências nos dados.

    • Se você alterar a chave de partição de uma tabela de origem e a chave primária da tabela de destino correspondente não incluir a chave de partição, poderá ocorrer perda de dados no banco de dados de destino.

      • Motivo: Uma instância PolarDB-X 1.0 possui várias instâncias ApsaraDB RDS for MySQL anexadas. O DTS mantém links de sincronização independentes para cada instância ApsaraDB RDS for MySQL. Alterar uma chave de partição faz com que os dados sejam excluídos de uma instância ApsaraDB RDS for MySQL e inseridos em outra. Como esses links são executados independentemente, a ordem das operações DELETE e INSERT pode ser interrompida. Se a chave primária do banco de dados de destino não incluir a chave de partição, uma operação DELETE executada posteriormente poderá excluir incorretamente os dados recém-inseridos.

      • Recomendação: Para evitar perda de dados devido a operações fora de ordem, garanta que a chave primária da tabela de destino inclua as colunas da chave de partição da tabela de origem.

    • Não execute operações DDL que alterem esquemas de banco de dados ou tabelas durante a sincronização de esquema ou a sincronização completa. Caso contrário, a tarefa de sincronização falhará.

      Nota

      Durante a sincronização completa, o DTS consulta o banco de dados de origem. Isso cria bloqueios de metadados que podem impedir operações DDL no banco de dados de origem.

  • O armazenamento do PolarDB-X 1.0 deve ser o ApsaraDB RDS for MySQL. Isso inclui instâncias RDS personalizadas e instâncias RDS adquiridas separadamente. O PolarDB for MySQL não é compatível.

  • Os recursos de armazenamento do PolarDB-X 1.0 devem ser divididos horizontalmente. O particionamento vertical não é compatível.

  • Instâncias somente leitura do PolarDB-X 1.0 não são compatíveis.

  • A instância de origem PolarDB-X 1.0 deve ser da versão 5.2 ou posterior.

Outras limitações

  • A sincronização de objetos INDEX e PARTITION não é compatível.

  • A sincronização incremental de dados depende de transações XA contínuas na instância de origem PolarDB-X 1.0 para garantir a consistência dos dados. Se essa continuidade for interrompida, por exemplo, ao modificar objetos de sincronização ou durante a recuperação de desastres do módulo de captura de dados incrementais, transações XA não confirmadas poderão ser perdidas.

  • A sincronização de dados de uma instância PolarDB-X 1.0 é um processo distribuído. O DTS cria uma subtarefa para cada instância ApsaraDB RDS for MySQL anexada. Visualize o status das subtarefas na página Task Topology.

  • Se seus dados incluírem caracteres de quatro bytes — como caracteres chineses raros ou emojis — o banco de dados e a tabela de destino devem usar o conjunto de caracteres utf8mb4.

    Nota

    Se utilizar o DTS para sincronizar esquemas de tabelas, defina o parâmetro character_set_server no nível da instância no banco de dados de destino como utf8mb4.

  • Execute a sincronização de dados fora dos horários de pico. A sincronização completa consome recursos de leitura e gravação tanto no banco de dados de origem quanto no de destino, aumentando suas cargas.

  • A sincronização completa realiza operações INSERT simultâneas, o que pode causar fragmentação de tabelas no banco de dados de destino. Consequentemente, o tablespace de destino fica maior que o de origem após a sincronização completa.

  • Não utilize ferramentas como pt-online-schema-change para realizar alterações DDL online em objetos de sincronização no banco de dados de origem. Caso contrário, a tarefa de sincronização falhará.

  • Durante a sincronização de dados, não grave dados no banco de dados de destino usando ferramentas diferentes do DTS. Do contrário, podem ocorrer inconsistências nos dados. Por exemplo, se você usar o DMS para executar uma alteração DDL online enquanto outros dados estão sendo gravados no banco de dados de destino, poderá haver perda de dados.

  • Ao gravar colunas cujos nomes diferem apenas em maiúsculas e minúsculas na mesma tabela do banco de dados MySQL de destino, podem ocorrer resultados inesperados, pois os nomes de colunas do MySQL não diferenciam maiúsculas de minúsculas.

  • Após a conclusão da sincronização de dados (quando o Status da instância for Completed), use o comando ANALYZE TABLE <table_name> para confirmar se todos os dados foram gravados na tabela de destino. Por exemplo, após o acionamento do mecanismo de failover HA no banco de dados MySQL de destino, os dados podem ter sido gravados apenas na memória, o que pode causar perda de dados.

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

Faturamento

Tipo de sincronização

Preço

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

Gratuito.

Sincronização incremental de dados

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

Topologias de sincronização

  • Sincronização unidirecional um para um

  • Sincronização unidirecional um para muitos

  • Sincronização em cascata unidirecional

  • Sincronização unidirecional muitos para um

Para mais informações sobre as topologias de sincronização compatíveis e suas observações de uso, consulte Synchronization topologies.

Operações SQL compatíveis

Tipo de operação

Instruções SQL

DML

INSERT, UPDATE, DELETE

Permissões de conta de banco de dados

Banco de dados

Permissões necessárias

Criação e autorização de conta

Instância de origem PolarDB-X 1.0

Permissões de leitura nos objetos a serem sincronizados.

Gerenciar contas

Cluster de destino PolarDB for MySQL

Permissões de leitura e gravação no banco de dados de destino para o qual os objetos são sincronizados.

Create and manage a database account.

Procedimento

  1. Acesse a página da lista de tarefas de sincronização da região de destino. Utilize um dos dois métodos abaixo:

    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 Synchronization.

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

    Pelo console do DMS

    Nota

    As operações reais podem variar conforme o modo e o layout do console do DMS. Para mais informações, consulte Simple mode e Customize the layout and style of the DMS interface.

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

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

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

  2. Clique em Create Task para abrir 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, leia atentamente os limites exibidos na parte superior da página. O descumprimento desses limites pode causar falha na tarefa ou inconsistência nos dados.

    Categoria

    Parâmetro

    Descrição

    N/A

    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 exclusivo.

    Source Database

    Database Type

    Selecione PolarDB-X 1.0.

    Connection Type

    Selecione Alibaba Cloud Instance.

    Instance Region

    Selecione a região onde reside a instância de origem PolarDB-X 1.0.

    Instance ID

    Selecione o ID da instância de origem PolarDB-X 1.0.

    Database Account

    Insira a conta do banco de dados da instância de origem PolarDB-X 1.0. Para informações sobre as permissões necessárias, consulte Database account permissions.

    Database Password

    Insira a senha correspondente à conta do banco de dados.

    Destination Database

    Database Type

    Selecione PolarDB for MySQL.

    Connection Type

    Selecione Alibaba Cloud Instance.

    Instance Region

    Selecione a região onde reside o cluster de destino PolarDB for MySQL.

    PolarDB Cluster ID

    Selecione o ID do cluster de destino PolarDB for MySQL.

    Database Account

    Insira a conta do banco de dados do cluster de destino PolarDB for MySQL. Para informações sobre as permissões necessárias, consulte Database account permissions.

    Database Password

    Insira a senha correspondente à conta do banco de dados.

    Encryption

    Escolha uma opção conforme suas necessidades. Para mais informações, consulte Configure SSL encryption.

  4. Após concluir a configuração, clique em Test Connectivity and Proceed na parte inferior da página.

    Nota
    • Certifique-se de que os blocos CIDR de endereços IP dos servidores DTS foram adicionados às configurações de segurança dos bancos de dados de origem e de destino para permitir o acesso dos servidores DTS. Adicione-os automática ou manualmente. Para mais informações, consulte Add the IP address CIDR blocks of DTS servers to a whitelist.

    • Se o banco de dados de origem ou de destino for autogerenciado (onde o Access Method não é Alibaba Cloud Instance), clique também em Test Connectivity na caixa de diálogo CIDR Blocks of DTS Servers.

  5. Configure os objetos da tarefa.

    1. Na página Configure Objects, configure os objetos a serem sincronizados.

      Parâmetro

      Descrição

      Synchronization Types

      A opção Incremental Data Synchronization vem selecionada. Por padrão, você também deve selecionar Schema Synchronization e Full Data Synchronization. Após a conclusão da pré-verificação, o DTS executa uma sincronização completa dos dados dos objetos selecionados da instância de origem para o cluster de destino. Isso serve como base para a subsequente sincronização incremental de dados.

      Processing Mode for Existing Tables in Destination

      • Precheck and Report Errors: Verifica se existe uma tabela com o mesmo nome no banco de dados de destino. Se não existir, a pré-verificação é aprovada. Se existir uma tabela com o mesmo nome, a pré-verificação falha e a tarefa de sincronização de dados não é iniciada.

        Nota

        Caso não seja possível excluir ou renomear a tabela com o mesmo nome no banco de dados de destino, mapeie-a para um nome diferente. Para mais informações, consulte Map table and column names.

      • Ignore Errors and Proceed: Ignora a verificação de nomes de tabelas duplicados no banco de dados de destino.

        Aviso

        Selecionar Ignore Errors and Proceed pode causar inconsistência de dados e colocar seu negócio em risco. Por exemplo:

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

          • Durante a sincronização completa, o DTS mantém o registro no cluster de destino. O registro correspondente do banco de dados de origem não é sincronizado.

          • Durante a sincronização incremental, o registro do banco de dados de origem sobrescreve o registro no banco de dados de destino.

        • Se os esquemas das tabelas forem diferentes, a sincronização inicial de dados pode falhar. Isso pode resultar na sincronização apenas parcial dos dados das colunas ou em uma falha completa da sincronização. Prossiga com cautela.

      Case Sensitivity Policy for Destination Object Names

      Configure a política de diferenciação de maiúsculas e minúsculas para nomes de objetos de banco de dados, tabelas e colunas sincronizados na instância de destino. Por padrão, a DTS default policy vem selecionada. Também é possível optar por usar as políticas padrão dos bancos de dados de origem e de destino. Para mais informações, consulte Case sensitivity policy for destination object names.

      Source Objects

      Na caixa Source Objects, clique em um objeto para sincronizar e, em seguida, clique em 向右 para movê-lo para a caixa Selected Objects.

      Nota

      Recomendamos selecionar tabelas como objetos de sincronização. Se selecionar um banco de dados inteiro, as alterações para adicionar ou excluir tabelas nesse banco de dados não serão sincronizadas com o banco de dados de destino.

      Selected Objects

      • Para renomear um único objeto de sincronização na instância de destino, clique com o botão direito no objeto na caixa Selected Objects. Para mais informações sobre como renomear objetos, consulte Map a single database, table, or column.

      • Para alterar em lote os nomes de vários objetos de sincronização na instância de destino, clique em Batch Edit no canto superior direito da caixa Selected Objects. Para mais informações, consulte Map databases, tables, and columns in a batch.

      Nota
      • Para selecionar operações SQL a serem sincronizadas no nível do banco de dados ou da tabela, clique com o botão direito em um objeto de sincronização na caixa Selected Objects e selecione as operações SQL desejadas na caixa de diálogo exibida.

      • Para definir condições WHERE e filtrar dados, clique com o botão direito em uma tabela na caixa Selected Objects e defina as condições de filtro na caixa de diálogo exibida. Para mais informações, consulte Filter task data with an SQL condition.

    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, sem necessidade de seleção. Para obter um desempenho mais estável, adquira um cluster dedicado para executar tarefas de sincronização do DTS. Para mais informações, consulte What is a DTS dedicated cluster?.

      Retry Time for Failed Connections

      Após o início da tarefa de sincronização, se a conexão com o banco de dados de origem ou de destino falhar, o DTS reportará um erro e iniciará imediatamente novas tentativas de conexão. A duração padrão de nova tentativa é de 720 minutos. Também é possível especificar uma duração personalizada entre 10 e 1.440 minutos. Recomendamos definir a duração para 30 minutos ou mais. Se o DTS reconectar com sucesso ao banco de dados dentro da duração especificada, a tarefa de sincronização será retomada automaticamente. Caso contrário, a tarefa falhará.

      Nota
      • Se houver várias instâncias DTS (por exemplo, Instância A e Instância B) compartilhando a mesma origem ou destino, e o tempo de nova tentativa de rede for definido como 30 minutos para a Instância A e 60 minutos para a Instância B, a duração menor de 30 minutos será usada para ambas.

      • Como o DTS cobra pelo tempo de execução da tarefa durante o período de nova tentativa de conexão, recomendamos personalizar a duração da nova tentativa conforme as 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 sincronização, se ocorrerem outros problemas não relacionados à conectividade com o banco de dados de origem ou de destino (como exceções na execução de DDL ou DML), o DTS reportará um erro e iniciará imediatamente operações contínuas de nova tentativa. A duração padrão de nova tentativa é de 10 minutos. Também é possível personalizar a duração dentro do intervalo de 1 a 1.440 minutos. Recomendamos definir para 10 minutos ou mais. Se as operações relevantes forem bem-sucedidas dentro da duração de nova tentativa definida, a tarefa de sincronização será retomada automaticamente. Caso contrário, a tarefa falhará.

      Importante

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

      Enable Throttling for Full Data Synchronization

      Durante a fase de sincronização completa, o DTS consome recursos de leitura e gravação dos bancos de dados de origem e de destino, o que pode aumentar a carga do banco de dados. Para reduzir a carga nos bancos de dados de origem e de destino, defina um limite de taxa para a tarefa de sincronização completa configurando os parâmetros Queries per second (QPS) to the source database, RPS of Full Data Migration e Data migration speed for full migration (MB/s).

      Nota
      • Este item de configuração está disponível apenas quando Synchronization Types estiver definido como Full Data Synchronization.

      • Também é possível adjust the full synchronization rate depois que a instância de sincronização estiver em execução.

      Enable Throttling for Incremental Data Synchronization

      Também é possível definir um limite de taxa para a tarefa de sincronização incremental. Para aliviar a pressão no banco de dados de destino, configure RPS of Incremental Data Synchronization e Data synchronization speed for incremental synchronization (MB/s).

      Environment Tag

      Selecione uma tag de ambiente para identificar a instância. Não obrigatório para este exemplo.

      Configure ETL

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

      Monitoring and Alerting

      Especifique se deseja configurar alertas. Se a sincronização falhar ou a latência exceder o limiar especificado, uma notificação será enviada a um contato de alerta.

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

    • Para visualizar os parâmetros da API para configurar esta instância, passe o mouse sobre o botão Next: Save Task Settings and Precheck e clique em Preview OpenAPI parameters no balão exibido.

    • Após terminar 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 do trabalho de sincronização, o DTS executa uma pré-verificação. O trabalho só pode começar após a aprovação de todos os itens da pré-verificação.

    • Se a pré-verificação falhar, clique em View Details para o item com falha. Corrija o problema conforme indicado e execute a pré-verificação novamente.

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

      • Caso um item de verificação falhe e não possa ser ignorado, clique em View Details ao lado do item. Siga as instruções para corrigir o problema 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 sequencialmente para pular o aviso e executar a pré-verificação novamente. Optar por suprimir o item de aviso pode causar problemas como inconsistência de dados e representar riscos ao seu negócio.

  7. Adquira a instância.

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

    2. Na página Purchase, selecione o método de faturamento e a especificação do link para a instância de sincronização de dados. A tabela a seguir descreve esses parâmetros em detalhes.

      Categoria

      Parâmetro

      Descrição

      New Instance Class

      Método de faturamento

      • Assinatura: O pagamento é feito no momento da criação da instância. Adequado para necessidades de longo prazo e mais econômico que o pagamento conforme o uso. Quanto maior a duração da assinatura, maior o desconto.

      • Pagamento conforme o uso: A cobrança é feita por hora. Adequado para necessidades de curto prazo. Libere a instância imediatamente após o uso para economizar custos.

      Configuração do grupo de recursos

      O grupo de recursos ao qual a instância pertence. O padrão é o grupo de recursos padrão. Para mais informações, consulte What is Resource Management?.

      Especificação do link

      O DTS oferece especificações de sincronização com diferentes níveis de desempenho. A especificação do link de sincronização afeta a taxa de sincronização. Escolha uma especificação baseada no seu cenário de negócios. Para mais informações, consulte Data synchronization link specifications.

      Duração da assinatura

      No modo de assinatura, selecione a duração e a quantidade para a instância de assinatura. É possível escolher uma assinatura mensal de 1 a 9 meses ou uma assinatura anual de 1, 2, 3 ou 5 anos.

      Nota

      Esta opção está disponível apenas quando o método de faturamento for Subscription.

    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, clique em OK.

      Visualize o progresso da tarefa na página Data Synchronization.