Use o Data Transmission Service (DTS) para migrar dados de um banco de dados Db2 for LUW autogerenciado para uma instância ApsaraDB RDS for MySQL. O DTS oferece suporte à migração de schema, migração completa de dados e migração incremental de dados. Escolha a combinação mais adequada à sua estratégia de transição.
Pré-requisitos
Antes de começar, verifique se você tem:
Uma instância ApsaraDB RDS for MySQL com armazenamento disponível superior ao tamanho total dos dados de origem no Db2 for LUW. Para mais informações, consulte Criar uma instância ApsaraDB RDS for MySQL.
Revisou as versões compatíveis do Db2 for LUW em Visão geral dos cenários de migração de dados.
Apenas para migração incremental de dados: Ative o registro de arquivamento no banco de dados Db2 for LUW de origem usando os parâmetros de configuração logarchmeth1 e logarchmeth2. Consulte a documentação da IBM sobre logarchmeth1 e logarchmeth2.
Após modificar a configuração logarchmeth, faça backup do banco de dados de origem para aplicar as alterações. Caso contrário, a pré-verificação poderá retornar um erro.
Faturamento
|
Tipo de migração |
Taxa de configuração da instância |
Taxa de tráfego de Internet |
|
Migração de schema e migração completa de dados |
Gratuita |
Gratuita |
|
Migração incremental de dados |
Cobrada. Consulte Visão geral do faturamento. |
— |
Permissões necessárias
Conceda as seguintes permissões às contas de banco de dados que o DTS utiliza.
|
Banco de dados |
Migração completa de dados |
Migração de schema |
Migração incremental de dados |
|
Db2 for LUW |
CONNECT e SELECT |
CONNECT e SELECT |
Administrador do banco de dados |
|
ApsaraDB RDS for MySQL |
Leitura e escrita no banco de dados de destino |
— |
— |
Para obter instruções sobre como criar contas e conceder permissões, consulte:
Db2 for LUW: Criando IDs de grupo e usuário para uma instalação de banco de dados Db2 e Visão geral das autoridades
ApsaraDB RDS for MySQL: Criar uma conta e Modificar permissões da conta
Limitações
Migração de schema
O DTS migra chaves estrangeiras do banco de dados de origem para o banco de dados de destino.
Durante a migração completa e incremental de dados, o DTS desativa temporariamente as verificações de restrições de chave estrangeira e as operações em cascata no nível da sessão. Executar operações em cascata ou de exclusão na origem durante a migração pode causar inconsistência de dados.
Banco de dados de origem
O servidor do banco de dados de origem deve ter largura de banda de saída suficiente. Caso contrário, a velocidade de migração de dados diminuirá.
As tabelas devem ter restrições PRIMARY KEY ou UNIQUE com todos os campos únicos. Sem essas restrições, o banco de dados de destino poderá conter registros duplicados.
Ao migrar tabelas individuais, uma única tarefa suporta no máximo 1.000 tabelas. Exceder esse limite causa um erro de solicitação. Para migrar mais de 1.000 tabelas, divida a migração em várias tarefas ou migre todo o banco de dados.
Para migração incremental de dados, o recurso de registro de dados deve estar ativado no banco de dados de origem. O DTS retorna um erro durante a pré-verificação caso ele não esteja ativado.
-
Requisitos de retenção de log: A retenção insuficiente de logs pode causar falha na tarefa ou resultar em inconsistência ou perda de dados. Após a conclusão da migração completa de dados, reduza o período de retenção para mais de 24 horas. O não cumprimento desses requisitos implica que o acordo de nível de serviço (SLA) do DTS não garante confiabilidade ou desempenho.
Apenas migração incremental: retenha logs por mais de 24 horas.
Migração completa e incremental combinadas: retenha logs por pelo menos 7 dias.
Durante a migração completa de dados, evite operações DDL que alterem schemas de bancos de dados ou tabelas. Tais alterações causam falha na tarefa de migração.
Durante a migração apenas completa, evite gravar dados no banco de dados de origem. Para garantir a consistência dos dados, execute a migração completa e a migração incremental juntas.
Migração incremental de dados
O DTS migra dados incrementais usando a tecnologia de replicação Change Data Capture (CDC) do Db2 for LUW. Essa tecnologia possui limitações próprias. Consulte Restrições gerais de dados para SQL Replication.
Operações SQL compatíveis durante a migração incremental de dados:
|
Tipo de operação |
Instruções SQL |
|
DML |
INSERT, UPDATE e DELETE |
Outras limitações
Migre dados fora dos horários de pico. A migração completa de dados consome recursos de leitura e escrita nos bancos de dados de origem e de destino, o que pode aumentar a carga do servidor.
Operações INSERT simultâneas durante a migração completa de dados causam fragmentação nas tabelas de destino. Após a migração completa, o tablespace de destino será maior que o de origem.
Gravar no banco de dados de destino usando ferramentas externas ao DTS durante a migração pode causar inconsistência de dados. Use o Data Management (DMS) para operações DDL após a migração. Consulte Executar operações DDL sem bloqueio.
Se uma instrução DDL falhar no banco de dados de destino, o DTS continuará em execução. Visualize as instruções DDL com falha nos logs da tarefa. Consulte Visualizar logs da tarefa.
Db2 for LUW autogerenciado
Um failover primário/secundário na origem durante a execução de uma tarefa de migração causa a falha da tarefa.
O DTS calcula a latência da migração comparando o timestamp dos dados migrados mais recentes no banco de dados de destino com o timestamp atual na origem. Se nenhuma operação DML for executada na origem por um longo período, os valores de latência podem ser imprecisos. Para atualizar a latência, execute uma operação DML na origem. Se estiver migrando um banco de dados inteiro, crie uma tabela de heartbeat atualizada a cada segundo.
Migrar dados do Db2 for LUW para o ApsaraDB RDS for MySQL
Etapa 1: Abrir Tarefas de Migração de Dados
Faça login no console do Data Management (DMS).
Na barra de navegação superior, clique em DTS.
No painel de navegação à esquerda, escolha DTS (DTS) > Data Migration.
O layout e as operações do console podem variar. Consulte Modo simples e Personalizar o layout e o estilo do console DMS para obter detalhes. Você também pode acessar diretamente a página Tarefas de Migração de Dados no novo console DTS .
Etapa 2: Selecionar a região
Na lista suspensa ao lado de Data Migration Tasks, selecione a região onde reside a instância de migração de dados.
No novo console DTS, selecione a região no canto superior esquerdo.
Etapa 3: Configurar bancos de dados de origem e destino
Clique em Create Task. Na página do assistente Create Task, configure os seguintes parâmetros.
Banco de dados de origem
|
Parâmetro |
Descrição |
|
Task Name |
Nome da tarefa de migração. O DTS atribui um nome automaticamente. Especifique um nome descritivo para facilitar a identificação da tarefa. O nome não precisa ser único. |
|
Select an existing DMS database instance |
Opcional. Selecione uma instância de banco de dados DMS existente para que o DTS preencha os parâmetros do banco de dados automaticamente. Caso contrário, configure os parâmetros manualmente. |
|
Database Type |
Selecione DB2 for LUW. |
|
Access Method |
Método de acesso ao banco de dados de origem. Este exemplo usa Self-managed Database on ECS. Para outros métodos de acesso, consulte Visão geral da preparação. |
|
Instance Region |
Região onde reside o banco de dados Db2 for LUW de origem. |
|
Replicate Data Across Alibaba Cloud Accounts |
Selecione No para este exemplo. |
|
ECS Instance ID |
ID da instância Elastic Compute Service (ECS) que hospeda o banco de dados Db2 for LUW de origem. |
|
Port Number |
Porta de serviço do banco de dados Db2 for LUW de origem. |
|
Database Name |
Nome do banco de dados Db2 for LUW de origem que contém os objetos a migrar. |
|
Database Account |
Conta do banco de dados de origem. Consulte a seção Permissões necessárias para obter detalhes. |
|
Database Password |
Senha da conta do banco de dados. |
Banco de dados de destino
|
Parâmetro |
Descrição |
|
Select an existing DMS database instance |
Opcional. Selecione uma instância de banco de dados DMS existente para que o DTS preencha os parâmetros do banco de dados automaticamente. Caso contrário, configure os parâmetros manualmente. |
|
Database Type |
Selecione MySQL. |
|
Access Method |
Selecione Alibaba Cloud Instance. |
|
Instance Region |
Região onde reside a instância ApsaraDB RDS for MySQL de destino. |
|
Replicate Data Across Alibaba Cloud Accounts |
Selecione No para este exemplo. |
|
RDS Instance ID |
ID da instância ApsaraDB RDS for MySQL de destino. |
|
Database Account |
Conta do banco de dados de destino. Consulte a seção Permissões necessárias para obter detalhes. |
|
Database Password |
Senha da conta do banco de dados. |
|
Encryption |
Selecione Non-encrypted ou SSL-encrypted. Se selecionar SSL-encrypted, ative primeiro a criptografia SSL na instância ApsaraDB RDS for MySQL. Consulte Configurar o recurso de criptografia SSL. |
Etapa 4: Testar conectividade
Clique em Test Connectivity and Proceed.
O DTS adiciona automaticamente seus blocos CIDR à lista de permissões de endereços IP das instâncias de banco de dados da Alibaba Cloud ou às regras de grupo de segurança das instâncias ECS. Para bancos de dados autogerenciados em um data center ou hospedados por um provedor de nuvem terceirizado, adicione manualmente os blocos CIDR do DTS à lista de permissões de endereços IP do banco de dados. Consulte Adicionar os blocos CIDR dos servidores DTS às configurações de segurança de bancos de dados locais.
Se o DTS hospedar o banco de dados de origem em várias instâncias ECS, adicione manualmente os blocos CIDR do DTS às regras de grupo de segurança de cada instância ECS.
Adicionar blocos CIDR públicos do DTS a uma lista de permissões de endereços IP de banco de dados ou a regras de grupo de segurança do ECS introduz riscos de segurança. Antes de usar o DTS, tome medidas preventivas, incluindo, entre outras: fortalecer a segurança de contas e senhas, limitar portas expostas, autenticar chamadas de API, auditar regularmente a lista de permissões de endereços IP e as regras de grupo de segurança, além de conectar o banco de dados ao DTS via Express Connect, VPN Gateway ou Smart Access Gateway.
Etapa 5: Configurar objetos de migração
| Parâmetro | Descrição |
|---|---|
| Migration Types | Selecione os tipos de migração conforme sua estratégia de transição: <br>- Apenas migração de schema e migração completa de dados: selecione Schema Migration e Full Data Migration.<br>- Migração sem tempo de inatividade com continuidade de serviço: selecione Schema Migration, Full Data Migration e Incremental Data Migration.<br><br> Nota
Se você não selecionar Incremental Data Migration, evite gravar no banco de dados de origem durante a migração para manter a consistência dos dados. |
| Processing Mode of Conflicting Tables | - Precheck and Report Errors: verifica se existem tabelas com nomes idênticos na origem e no destino. Se existirem nomes idênticos, a pré-verificação falha e a tarefa não pode ser iniciada. Use o recurso de mapeamento de nomes de objetos para renomear tabelas, se necessário. Consulte Mapear nomes de objetos.<br>- Ignore Errors and Proceed: ignora a verificação de nomes idênticos. Aviso
Isso pode causar inconsistência de dados. Se os schemas diferirem entre origem e destino, apenas colunas específicas serão migradas ou a tarefa falhará. |
| Capitalization of Object Names in Destination Instance | Controla a capitalização de nomes de bancos de dados, tabelas e colunas no destino. O padrão é DTS default policy. Consulte Especificar a capitalização de nomes de objetos na instância de destino. |
| Source Objects | Selecione objetos na seção Source Objects e clique em |
| Selected Objects | Clique com o botão direito em um objeto para renomeá-lo ou definir condições de filtro WHERE. Clique em Batch Edit no canto superior direito para renomear vários objetos simultaneamente. Consulte Mapear nomes de objetos e Usar condições SQL para filtrar dados. <br><br> Nota
O mapeamento de nomes de objetos pode causar inconsistência de dados se os objetos dependentes não forem também migrados. Para migração incremental de operações SQL específicas em um objeto, clique com o botão direito no objeto em Selected Objects e selecione as operações SQL a incluir. |
Etapa 6: Configurar definições avançadas
Clique em Next: Advanced Settings.
Verificação de dados
Para configurar a verificação de dados, consulte Ativar verificação de dados.
Definições avançadas
| Parâmetro | Descrição |
|---|---|
| Select the dedicated cluster used to schedule the task | Por padrão, o DTS agenda a tarefa no cluster compartilhado. Adquira e especifique um cluster dedicado para executar a tarefa em recursos dedicados. Consulte O que é um cluster dedicado DTS. |
| Set Alerts | Configure alertas para falhas de tarefa ou latência que exceda um limiar. Selecione Yes para especificar um limiar de alerta e contatos. Consulte Configurar monitoramento e alertas. |
| Retry Time for Failed Connections | Intervalo durante o qual o DTS tenta reconectar após uma falha de conexão depois do início da tarefa. Valores válidos: 10–1.440 minutos. Padrão: 720 minutos. Defina este valor como superior a 30 minutos. Se o DTS reconectar dentro desse período, a tarefa será retomada. Caso contrário, a tarefa falhará. <br><br> Nota
Quando várias tarefas compartilham o mesmo banco de dados de origem ou de destino, o tempo de nova tentativa configurado mais recentemente tem precedência. O DTS cobra pela instância durante as novas tentativas. |
| The wait time before a retry when other issues occur in the source and destination databases | Intervalo durante o qual o DTS tenta novamente operações DDL ou DML com falha após o início da tarefa. Valores válidos: 1–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 | Limite a taxa de leitura e escrita durante a migração completa de dados para reduzir a carga nos servidores de 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). Este parâmetro está disponível apenas quando Full Data Migration estiver selecionado. |
| Enable Throttling for Incremental Data Migration | Limite a taxa de escrita durante a migração incremental de dados. Configure RPS of Incremental Data Migration e Data migration speed for incremental migration (MB/s). Este parâmetro está disponível apenas quando Incremental Data Migration estiver selecionado. |
| Environment Tag | Uma tag opcional para identificar a instância DTS por ambiente. |
| Configure ETL | Configure o recurso de extração, transformação e carga (ETL) para processar dados durante a migração. Selecione Yes e insira instruções de processamento de dados no editor de código. Consulte O que é ETL? e Configurar ETL em uma tarefa de migração ou sincronização de dados. |
Etapa 7: Salvar configurações e executar pré-verificação
Clique em Next: Save Task Settings and Precheck.
Para visualizar os parâmetros da API para configurar a tarefa DTS, passe o ponteiro do mouse sobre Next: Save Task Settings and Precheck e clique em Preview OpenAPI parameters antes de prosseguir.
O DTS executa uma pré-verificação antes de iniciar a tarefa de migração.
Se a pré-verificação falhar, clique em View Details ao lado do item com falha, resolva o problema e execute a pré-verificação novamente.
-
Se um alerta aparecer para um item:
Se o alerta não puder ser ignorado, clique em View Details, resolva o problema e execute a pré-verificação novamente.
Se o alerta puder ser ignorado, clique em Confirm Alert Details, depois clique em Ignore > OK > Precheck Again. Ignorar alertas pode causar inconsistência de dados.
Etapa 8: Adquirir a instância de migração
Aguarde até que a success rate atinja 100% e clique em Next: Purchase Instance.
Na página Purchase Instance, configure os seguintes parâmetros.
|
Parâmetro |
Descrição |
|
Resource Group |
Grupo de recursos para a instância de migração. Padrão: default resource group. Consulte O que é Resource Management? |
|
Instance Class |
A classe da instância determina a velocidade da migração. Selecione uma classe conforme seus requisitos. Consulte Especificações das instâncias de migração de dados. |
Etapa 9: Iniciar a migração
Marque a caixa de seleção Data Transmission Service (Pay-as-you-go) Service Terms e clique em Buy and Start.
A tarefa de migração será iniciada. Acompanhe o progresso na lista de tarefas.