Use o Data Transmission Service (DTS) para migrar dados de um cluster PolarDB for MySQL para o mecanismo de tabela wide de uma instância Lindorm. O DTS suporta a migração completa de dados, a migração incremental de dados ou ambas.
Pré-requisitos
Antes de começar, certifique-se de ter:
Uma instância Lindorm de destino com o mecanismo de tabela wide e capacidade de armazenamento superior ao espaço ocupado pelo cluster PolarDB for MySQL de origem. Consulte Create an instance.
A compatibilidade com MySQL ativada na instância Lindorm de destino. Consulte Enable the MySQL compatibility feature.
Um banco de dados (namespace) e uma tabela wide já criados na instância Lindorm de destino. Se necessário, pré-particione a tabela wide com base no volume de dados esperado. Consulte Connect to and use the wide table engine using a MySQL command-line tool, Connect to and use the wide table engine using Lindorm-cli, Access the wide table engine using Lindorm Shell, CREATE TABLE e Data type mapping.
Os objetos criados devem atender aos requisitos em Cotas e limites .
Limitações
As limitações a seguir se aplicam a este caminho de migração. Cada limitação indica o tipo de migração afetado: (Full), (Incremental) ou (Ambas).
Banco de dados de origem
Limitação | Aplica-se a |
O servidor do banco de dados source precisa ter largura de banda de saída suficiente. A largura de banda insuficiente reduz a velocidade da migração. | Ambas |
As tabelas devem ter restrições PRIMARY KEY ou UNIQUE e todos os campos devem ser únicos. Caso contrário, o banco de dados de destino poderá conter registros duplicados. | Ambas |
Se você selecionar tabelas como objetos de migração e precisar renomear tabelas ou colunas no banco de dados de destino, uma única tarefa suporta no máximo 1.000 tabelas. Para mais de 1.000 tabelas, configure várias tarefas ou migre o banco de dados inteiro. | Ambas |
ative o log binário e defina o parâmetro Nota Ativar o log binário gera cobranças de armazenamento pelo espaço ocupado pelos logs binários. | Apenas incremental |
Mantenha os logs binários por pelo menos 3 dias. Recomenda-se um período de retenção de 7 dias. Um período menor pode causar falha no DTS ao buscar logs binários, resultando em falha da tarefa ou perda de dados. A retenção insuficiente também pode invalidar o Acordo de Nível de service (SLA) do DTS. Consulte modifique o período de retenção. | Apenas incremental |
Não execute operações DDL nos objetos de migração durante a migração. O DTS consulta o banco de dados de origem durante a migração completa, gerando bloqueios de metadados que podem impedir operações DDL. | Apenas completa |
Não grave novos dados no banco de dados de origem. Para manter a consistência dos dados em tempo real, execute as migrações completa e incremental de dados em vez de apenas a migração completa. | Apenas completa (quando executada sem a incremental) |
Outras limitações
|
Limitação |
Aplica-se a |
|
Não há suporte para migração de esquema. |
Ambas |
|
Não há suporte para migração de colunas do tipo de dados BIT. |
Ambas |
|
Não é possível migrar apenas campos de chave primária. Os dados migrados devem incluir pelo menos um campo que não seja chave primária. |
Ambas |
|
O DTS não migra nós somente leitura do cluster PolarDB for MySQL de origem. |
Ambas |
|
O DTS não migra tabelas externas do Object Storage Service (OSS) do cluster de origem. |
Ambas |
|
O DTS grava dados apenas no mecanismo de tabela wide da instância Lindorm. |
Ambas |
|
O DTS não suporta a alternância entre primário e standby durante a migração completa. Se ocorrer uma alternância, reconfigure a tarefa de migração imediatamente. |
Apenas completa |
|
Strings vazias VARBINARY são tratadas como valores nulos tanto no DTS quanto na instância Lindorm. Por exemplo, um valor de coluna de origem |
Ambas |
|
Caso as colunas DECIMAL na instância Lindorm de destino tenham precisão diferente da origem, a tarefa falhará. |
Ambas |
|
Os dados na instância Lindorm devem atender aos requisitos em Limites em solicitações de dados. Caso contrário, a tarefa falhará. |
Ambas |
|
O DTS consome recursos de leitura e gravação nos bancos de dados de origem e de destino, aumentando a carga do banco de dados. Execute as migrações em horários de baixa demanda, quando a carga da CPU de ambos os bancos de dados estiver abaixo de 30%. |
Apenas completa |
|
Operações INSERT simultâneas durante a migração completa causam fragmentação de tabelas no banco de dados de destino. Após a migração completa, o armazenamento usado pelas tabelas de destino será maior que o da instância de origem. |
Apenas completa |
|
Não use ferramentas como pt-online-schema-change para execute operações DDL online nos objetos de migração no banco de dados de origem durante a migração. |
Ambas |
|
Se outras origens gravarem no banco de dados de destino durante a migração, poderá haver inconsistência de dados. |
Ambas |
|
Se uma instância DTS falhar, o suporte do DTS tentará recuperá-la em até 8 horas. Durante a recuperação, a equipe pode executar operações como reiniciar a instância ou ajustar parâmetros da instância DTS (não parâmetros do banco de dados). Consulte Modificar parâmetros da instância para ver os parâmetros que podem ser modificados. |
Ambas |
Faturamento
|
Tipo de migração |
Taxas de configuração de link |
Taxas de transferência de dados |
|
Migração completa de dados |
Gratuito |
Gratuito quando o Access Method do banco de dados de destino é Alibaba Cloud Instance. Se o Access Method for Public IP Address, a transferência de dados pela Internet está sujeita a taxas adicionais. Consulte Billing overview. |
|
Migração incremental de dados |
Cobrança aplicável. Consulte Billing overview. |
— |
Operações SQL suportadas para migração incremental
|
Tipo de operação |
Instruções SQL |
|
DML |
INSERT, atualize, exclua |
|
DDL |
CREATE TABLE, DROP TABLE, ADD COLUMN |
Devido às limitações do mecanismo de tabela wide , o DTS não migra atributos extras em instruções ADD COLUMN. Por exemplo,ALTER TABLE test ADD COLUMN col INT DEFAULT 0;na origem se tornaALTER TABLE test ADD COLUMN col INT;no destino.
Permissões necessárias
Banco de dados | Migração completa | Migração incremental |
Cluster PolarDB for MySQL de origem | SELECT | Leitura e gravação |
Instância Lindorm de destino | Leitura e gravação no namespace de destino | |
Para ver instruções passo a passo sobre a criação de contas e a concessão de permissões:
PolarDB for MySQL: Create and gerencie database accounts
Lindorm: User management
crie uma tarefa de migração
-
acesse a página Data Migration e selecione a região da instância de migração.
console do DTS
acesse o console do DTS.
No painel de navegação à esquerda, clique em Data Migration.
No canto superior esquerdo da página, selecione a região da instância de migração de dados.
console do DMS
Note
O layout do console do DMS pode variar de acordo com o modo. Consulte Modo simples e Personalizar o layout e o estilo do console do DMS.
acesse o console do DMS.
Na barra de navegação superior, passe o ponteiro do mouse sobre .
Na lista suspensa à direita de Data Migration Tasks, selecione a região da instância de sincronização de dados.
clique em Create Task.
-
Configure os bancos de dados de origem e de destino.
Seção
Parâmetro
Descrição
(Nenhum)
Task Name
Um nome para a tarefa do DTS. O DTS gera um nome automaticamente. especifique um nome descritivo para identificar a tarefa facilmente. O nome não precisa ser único.
Source Database
Select Existing Connection
Se a instância estiver registrada no DTS, selecione-a na lista suspensa e o DTS preenche os campos restantes automaticamente. Caso contrário, configure os campos abaixo manualmente. No console do DMS, selecione a instância em Select a DMS database instance. Consulte Manage database connections.
Database Type
Selecione PolarDB for MySQL.
Access Method
Selecione Alibaba Cloud Instance.
Instance Region
Selecione a região do cluster PolarDB for MySQL de origem.
Replicate Data Across Alibaba Cloud Accounts
Selecione No caso a instância de origem pertença à conta atual do Alibaba Cloud.
PolarDB Cluster ID
Selecione o ID do cluster PolarDB for MySQL de origem.
Database Account
insira a conta do banco de dados. Consulte Permissões necessárias.
Database Password
insira a senha da conta do banco de dados.
Encryption
Selecione um método de criptografia conforme a necessidade. Para criptografia Secure Sockets Layer (SSL), consulte Configure SSL encryption.
Destination Database
Select Existing Connection
Se a instância estiver registrada no DTS, selecione-a na lista suspensa. Caso contrário, configure os campos abaixo manualmente. Consulte Manage database connections.
Database Type
Selecione Lindorm.
Access Method
Selecione Alibaba Cloud Instance.
Instance Region
Selecione a região da instância Lindorm de destino.
Instance ID
Selecione o ID da instância Lindorm de destino.
Database Account
insira a conta do banco de dados. Consulte Permissões necessárias.
Database Password
insira a senha da conta do banco de dados.
-
clique em Test Connectivity and Proceed.
Certifique-se de adicionar os blocos CIDR dos servidores DTS às configurações de segurança (listas de permissões) 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 usar um método de acesso diferente de Alibaba Cloud Instance , clique em Test Connectivity na caixa de diálogo CIDR Blocks of DTS Servers .
-
Na página Configure Objects, selecione os objetos a serem migrados e configure as definições de migração.
Ao renomear objetos com o mapeamento de nomes, outros objetos dependentes podem falhar na migração.
Parâmetro
Descrição
Migration Types
Selecione Full Data Migration para uma migração única. Selecione Full Data Migration e Incremental Data Migration para manter os dados consistentes enquanto os serviços permanecem online. Se selecionar apenas a migração completa, não grave no banco de dados de origem durante a migração.
Processing Mode of Conflicting Tables
Use o valor padrão.
Capitalization of Object Names in Destination Instance
Controla a capitalização dos nomes de bancos de dados, tabelas e colunas no destino. O padrão é DTS default policy. Consulte especifique a capitalização de nomes de objetos na instância de destino.
Source Objects
Selecione os objetos a serem migrados e clique em
para movê-los para Selected Objects. Selecione bancos de dados, tabelas e colunas.Selected Objects
Se os nomes do banco de dados (namespace), da tabela ou da coluna no destino forem diferentes dos da origem, use o mapeamento de nomes de objetos. Consulte Map object names. Para filtrar linhas por condição, clique com o botão direito em uma tabela e especifique uma cláusula WHERE. Consulte especifique condições de filtro. Para selecionar operações SQL específicas para migração incremental, clique com o botão direito em um objeto em Selected Objects.
-
clique em Next: Advanced Settings e configure os seguintes parâmetros.
Parâmetro
Descrição
Dedicated Cluster for Task Scheduling
Por padrão, o DTS agenda tarefas para o cluster compartilhado. Adquira um cluster dedicado para melhorar a estabilidade. Consulte O que é um cluster dedicado do DTS.
Retry Time for Failed Connections
Tempo durante o qual o DTS tenta reconectar quando o banco de dados de origem ou de destino fica inacessível. Valores válidos: 10 a 1.440 minutos. Padrão: 720 minutos. defina este valor como superior a 30 minutos. Se os bancos de dados se reconectarem dentro dessa janela, o DTS retomará a tarefa; caso contrário, a tarefa falhará. Se várias tarefas compartilharem a mesma origem ou destino, prevalece o valor definido mais recentemente. O DTS cobra pela instância durante a nova tentativa.
Retry Time for Other Issues
Tempo durante o qual o DTS tenta novamente após falhas de DDL ou DML. Valores válidos: 1 a 1.440 minutos. Padrão: 10 minutos. defina este valor como superior a 10 minutos. Este valor deve ser menor que Retry Time for Failed Connections.
Enable Throttling for Full Data Migration
Limita o consumo de recursos de leitura e gravação do DTS durante a migração completa para reduzir a carga do banco de dados. Configure 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 Migration estiver selecionado.
Enable Throttling for Incremental Data Migration
Limita o consumo de recursos durante a migração incremental. Configure RPS of Incremental Data Migration e Data migration speed for incremental migration (MB/s). Disponível apenas quando Incremental Data Migration estiver selecionado.
Whether to delete SQL operations on heartbeat tables of forward and reverse tasks
Define se o DTS grava operações de tabela de heartbeat no banco de dados de origem. Yesconfigurações de notificação de alerta: não grava operações de heartbeat (uma latência pode ser exibida para a instância DTS). No: grava operações de heartbeat (pode afetar recursos como backup físico e clonagem do banco de dados de origem).
Environment Tag
(Opcional) Selecione uma tag para identificar a instância.
Configure ETL
Define se deve ativar a extração, transformação e carga (ETL). Yes: abre um editor de código para instruções de processamento de dados. Consulte configure ETL em uma tarefa de migração ou sincronização de dados. No: o ETL é desativado. Consulte O que é ETL?
Monitoring and Alerting
Define se devem ser configurados alertas para falhas de tarefa ou limiares de latência. Yes: configure o limiar de alerta e os contatos de notificação. Consulte configure monitoramento e alertas ao criar uma tarefa DTS. No: sem alertas.
-
clique em Next: Save Task Settings and Precheck. visualize os parâmetros da api para esta tarefa, passe o mouse sobre Next: Save Task Settings and Precheck e clique em Preview OpenAPI parameters antes de continuar.
O DTS executa uma pré-verificação antes de iniciar a tarefa de migração. A tarefa só começa após passar na pré-verificação. - Se um item de pré-verificação falhar, clique em View Details ao lado dele, resolva o problema e clique em Precheck Again . - Se um alerta for disparado para um item de pré-verificação: - Se não for possível ignorar o alerta, corrija o problema e execute a pré-verificação novamente. - Se for possível ignorar o alerta, clique em Confirm Alert Details , depois em Ignore , em seguida em OK e, por fim, em Precheck Again . Ignorar alertas pode resultar em inconsistência de dados.
Quando a Success Rate atingir 100%, clique em Next: Purchase Instance.
-
Na página Purchase Instance, configure a classe da instância.
Seção
Parâmetro
Descrição
New Instance Class
Resource Group
O grupo de recursos para a instância de migração. Padrão: default resource group. Consulte What is Resource Management?
Instance Class
A classe da instância determina a velocidade da migração. Selecione com base nas suas necessidades. Consulte Classes de instância de instâncias de migração de dados.
Leia os Data Transmission Service (Pay-as-you-go) Service Terms, marque a caixa de seleção para concordar e clique em Buy and Start. Na caixa de diálogo de confirme, clique em OK.
verifique a migração
Monitore o progresso da tarefa na página Data Migration:
Full data migration only: A tarefa para automaticamente após a conclusão. O status muda para Completed.
Full and incremental data migration: A fase de migração incremental permanece em execução contínua e não para automaticamente. O status exibe Running.