Todos os produtos
Search
Central de documentação

Data Transmission Service:Como resolver tarefas de migração completa lentas ou travadas

Última atualização: Sep 23, 2026

As tarefas de migração completa de dados ou de sincronização podem travar ou apresentar lentidão por vários motivos. Este guia ajuda você a identificar a causa e retomar a execução da tarefa.

A causa mais comum é a insuficiência de recursos no banco de dados de origem ou de destino. Comece a investigação por esse ponto.

Possíveis causas

  • O banco de dados de origem (source) tem um grande volume de dados, ou as tabelas migradas não possuem chave primária.

  • Várias tarefas do DTS estão em execução simultânea no mesmo banco de dados de origem.

  • O DTS não consegue se conectar ao banco de dados de origem ou de destino devido a restrições de lista de permissões, falta de permissões ou credenciais inválidas.

  • O banco de dados de origem ou de destino apresenta um gargalo de desempenho, ou a largura de banda da rede é insuficiente.

  • Não é possível gravar dados no banco de dados de destino: ele está em modo somente leitura, o disco está cheio ou um deadlock bloqueia as gravações.

Solução de problemas

Verifique o banco de dados de origem

Estime o tempo de migração

Antes de presumir que há um erro, estime o tempo necessário para a migração:

  1. Verifique o volume de dados dos objetos a serem migrados.

  2. Para testar, crie e execute primeiro um lote pequeno (por exemplo, migre um subconjunto de 10 GB) e use o resultado para projetar o tempo total de migração.

Verifique tarefas simultâneas

Várias tarefas do DTS em execução simultânea competem pelos mesmos recursos do banco de dados de origem, o que pode causar escassez temporária de recursos. Para evitar contenção, execute as tarefas em janelas de tempo distintas.

Verifique as credenciais

Confirme se o DTS consegue se conectar ao banco de dados de origem com o nome de usuário e a senha configurados. Teste a conectividade a partir de um host remoto:

mysql -h<IP address or domain name of source database> -P<Port number of source database> -u<Username> -p<Password>

Verifique as configurações da lista de permissões

Se a origem for um banco de dados autogerenciado, confirme se os blocos CIDR do servidor DTS estão incluídos nas configurações de segurança do banco de dados. Para obter instruções, consulte Whitelist DTS IP ranges for your user-created database.

Verifique as chaves primárias

Tabelas sem chaves primárias ou índices exclusivos podem desacelerar significativamente a migração completa de dados. Além disso, o DTS pode gravar registros duplicados no banco de dados de destino. Verifique se as tabelas grandes possuem chave primária:

show create table <Database name>.<Table name>;

Verifique o banco de dados de destino

Verifique as credenciais

Confirme se o DTS consegue se conectar ao banco de dados de destino com o nome de usuário e a senha configurados. Teste a conectividade a partir de um host remoto:

mysql -h<IP address or domain name of destination database> -P<Port number of destination database> -u<Username> -p<Password>

Verifique as configurações da lista de permissões

Se o destino for um banco de dados autogerenciado, confirme se os blocos CIDR do servidor DTS estão incluídos nas configurações de segurança do banco de dados. Para obter instruções, consulte Whitelist DTS IP ranges for your user-created database.

Verifique o status de somente leitura

Se o banco de dados de destino estiver em modo somente leitura, o DTS não conseguirá gravar dados nele. Para consultar o status de somente leitura de um banco de dados MySQL:

show global variables like '%read_only%';

Se read_only for retornado e super_read_only estiver ON, o banco de dados está no modo somente leitura. Para alterá-lo para leitura e gravação, defina a variável:

unlock tables;
set global read_only=0;
read_only=1 ou TRUE indica somente leitura; read_only=0 ou FALSE indica leitura e gravação. Para obter mais detalhes, consulte a documentação do MySQL .

Verifique o espaço em disco disponível

Um disco cheio no banco de dados de destino interrompe todas as gravações. Para uma instância do ApsaraDB RDS for MySQL, verifique o uso de armazenamento no console do ApsaraDB RDS. Para obter mais detalhes, consulte Troubleshoot insufficient storage issues on an ApsaraDB RDS for MySQL instance.

Verifique gargalos de desempenho

Para uma instância do ApsaraDB RDS for MySQL, visualize a utilização da CPU, o uso de memória e a carga de E/S na página Monitoring and Alerts do console do ApsaraDB RDS. Verifique também se a instância atingiu os limites de sua especificação. Para obter mais detalhes, consulte View monitoring information e Instance types for standard primary ApsaraDB RDS for MySQL instances (original x86 architecture).

Verifique deadlocks

Se houver um deadlock, o DTS não conseguirá gravar dados no banco de dados de destino. Para diagnosticar e resolver deadlocks em um banco de dados de destino MySQL:

  1. Verifique se há tabelas bloqueadas:

    show OPEN TABLES where In_use > 0;
  2. Identifique tabelas bloqueadas ou consultas lentas:

    SHOW PROCESSLIST;
  3. Encerre o processo de bloqueio:

    KILL [CONNECTION | QUERY] thread_id

Verifique a conectividade de rede

Use comandos do sistema operacional, como ping e telnet, ou uma ferramenta de terceiros para testar a conectividade e a latência da rede entre o DTS e o banco de dados de origem ou de destino. Se a largura de banda for o fator limitante, aumente a largura de banda da rede.

Próximos passos

Se a tarefa apresentar latência durante a migração ou sincronização incremental de dados após a conclusão da fase de migração completa, consulte What do I do if latency occurs during incremental data migration or synchronization?