Este tópico descreve como usar o Data Transmission Service (DTS) para migrar dados de um cluster PolarDB for MySQL para um banco de dados Oracle autogerenciado.
Pré-requisitos
Você deve ter criado um banco de dados Oracle autogerenciado. O espaço de armazenamento disponível no banco de dados Oracle de destino deve ser maior que o espaço utilizado pelo cluster PolarDB for MySQL de origem.
Se o banco de dados Oracle autogerenciado for um Oracle Real Application Cluster (RAC), ele deve estar conectado à Alibaba Cloud por meio de uma VPC. Para garantir a execução correta da tarefa do DTS, conecte o endereço IP do Single Client Access Name (SCAN) do Oracle RAC e o endereço IP virtual (VIP) de cada nó à VPC e configure as rotas. Para mais informações sobre como configurar rotas, consulte Overview of solutions for connecting an on-premises data center to Alibaba Cloud e Connect an on-premises data center to DTS using a VPN Gateway.
Precauções
Durante a migração de dados completa e incremental:
Se houver operações de atualização ou exclusão em cascata no banco de dados de origem, podem ocorrer inconsistências de dados.
Se existirem chaves estrangeiras ou triggers no banco de dados de destino, desative-os. Caso contrário, a tarefa de migração de dados pode falhar.
Categoria | Descrição |
Limitações do banco de dados de origem |
|
Outras limitações |
|
Outras observações | O DTS executa periodicamente o comando CREATE DATABASE IF NOT EXISTS |
Faturamento
|
Tipo de migração |
Taxa de configuração da instância |
Taxa de tráfego de Internet |
|
Migração de esquema e migração completa de dados |
Gratuito. |
Quando o parâmetro Access Method do banco de dados de destino estiver definido como Public IP Address, haverá cobrança pelo tráfego de Internet. Para mais informações, consulte Billing overview. |
|
Migração incremental de dados |
Cobrado. Para mais informações, consulte Billing overview. |
Operações SQL compatíveis com a migração incremental
|
Tipo de operação |
Operações SQL |
|
DML |
INSERT, UPDATE e DELETE |
|
DDL |
|
Permissões necessárias para contas de banco de dados
|
Banco de dados |
Permissão necessária |
Métodos de criação de conta e autorização |
|
Cluster PolarDB for MySQL |
Permissões de leitura nos objetos a serem migrados |
|
|
Banco de dados Oracle |
Permissões do proprietário do esquema |
Procedimento
-
Acesse a página de lista de tarefas de migração da região de destino usando um dos métodos a seguir.
From the DTS console
Faça login no console do Data Transmission Service (DTS).
No painel de navegação à esquerda, Data Migration clique em.
No canto superior esquerdo da página, selecione a região onde a instância de migração está localizada.
From the DMS console
NotaAs operações reais podem variar de acordo com o modo e o layout do console do DMS. Para mais informações, consulte Simple mode console e Customize the layout and style of the DMS console.
Faça login no console do Data Management (DMS).
Na barra de menu superior, escolha .
À direita de Data Migration Tasks, selecione a região onde a instância de migração está localizada.
Clique em Create Task para acessar a página de configuração da tarefa.
-
Configure os bancos de dados de origem e destino.
Categoria
Configuração
Descrição
N/D
Task Name
O DTS gera automaticamente um nome para a tarefa. Recomendamos que você especifique um nome descritivo para facilitar a identificação. O nome não precisa ser exclusivo.
Source Database
Select Existing Connection
Para usar uma instância de banco de dados que já tenha sido added to the system (criada ou salva), selecione a instância desejada na lista suspensa. As informações do banco de dados abaixo serão configuradas automaticamente.
NotaNo console do DMS, esse parâmetro é chamado de Select a DMS database instance..
Se você não registrou a instância de banco de dados no sistema, ou se não precisa usar uma instância registrada, configure manualmente as informações do banco de dados abaixo.
Database Type
Selecione PolarDB for MySQL.
Access Method
Selecione Alibaba Cloud Instance.
Instance Region
Selecione a região onde o cluster PolarDB for MySQL de origem está localizado.
Replicate Data Across Alibaba Cloud Accounts
Neste exemplo, é utilizada uma instância de banco de dados da conta Alibaba Cloud atual. Selecione No.
PolarDB Cluster ID
Selecione o ID do cluster PolarDB for MySQL de origem.
Database Account
Insira a conta de banco de dados do cluster PolarDB for MySQL de origem. Para mais informações sobre as permissões necessárias, consulte Permissions required for database accounts.
Database Password
Insira a senha correspondente à conta de banco de dados.
Encryption
Selecione a opção apropriada. Para mais informações sobre o recurso de criptografia SSL, consulte Set SSL encryption.
Destination Database
Select Existing Connection
Para usar uma instância de banco de dados que já tenha sido added to the system (criada ou salva), selecione a instância desejada na lista suspensa. As informações do banco de dados abaixo serão configuradas automaticamente.
NotaNo console do DMS, esse parâmetro é chamado de Select a DMS database instance..
Se você não registrou a instância de banco de dados no sistema, ou se não precisa usar uma instância registrada, configure manualmente as informações do banco de dados abaixo.
Database Type
Selecione Oracle.
Access Method
Selecione um tipo de conexão com base na localização de implantação do banco de dados de origem. Este tópico usa Self-managed Database on ECS como exemplo.
NotaSe o banco de dados autogerenciado for de outro tipo de instância, você também precisará realizar os preparativos correspondentes. Para mais informações, consulte Preparations overview.
Instance Region
Selecione a região onde o banco de dados Oracle de destino está localizado.
ECS Instance ID
Selecione o ID da instância ECS que hospeda o banco de dados Oracle de destino.
Port Number
Insira a porta de service do banco de dados Oracle de destino. O valor padrão é 1521.
Oracle Type
Non-RAC Instance: ao selecionar essa opção, você também deve especificar o SID.
RAC or PDB Instance: ao selecionar essa opção, você também deve especificar o Service Name.
Este tópico usa RAC or PDB Instance como exemplo. Especifique o Service Name.
Database Account
Insira a conta de banco de dados do banco de dados Oracle de destino. Para mais informações sobre as permissões necessárias, consulte Permissions required for database accounts.
Database Password
Insira a senha correspondente à conta de banco de dados.
-
Após concluir a configuração, clique em Test Connectivity and Proceed na parte inferior da página. Na caixa de diálogo CIDR Blocks of DTS Servers exibida, clique em Test Connectivity.
NotaCertifique-se de que os segmentos de endereço IP do service DTS foram adicionados — automática ou manualmente — às configurações de segurança dos bancos de dados de origem e destino, permitindo o acesso dos servidores do DTS. Para mais informações, consulte Add DTS server IP addresses to a whitelist.
-
Configure os objetos da tarefa.
-
Na página Configure Objects, configure os objetos que deseja migrar.
Configuração
Descrição
Migration Types
Se você precisa apenas realizar uma migração completa, selecione Schema Migration e Full Data Migration.
Para realizar uma migração sem tempo de inatividade, selecione Schema Migration, Full Data Migration e Incremental Data Migration.
NotaSe você não selecionar Schema Migration, é necessário garantir que o banco de dados e as tabelas de destino já existam para receber os dados. Você também pode usar o recurso de mapeamento de nomes de objetos na caixa Selected Objects conforme necessário.
Se você não selecionar Incremental Data Migration, não grave dados novos na instância de origem durante a migração para garantir a consistência dos dados.
Processing Mode of Conflicting Tables
Precheck and Report Errors: Verifica se existem tabelas com os mesmos nomes no banco de dados de destino. Se não houver tabelas com os mesmos nomes, a pré-verificação será aprovada. Se existirem tabelas com nomes iguais, um erro será reportado durante a pré-verificação, e a tarefa de migração de dados não será iniciada.
NotaSe uma tabela no banco de dados de destino tiver o mesmo nome mas não puder ser facilmente excluída ou renomeada, altere o nome da tabela no banco de dados de destino. Para mais informações, consulte Object name mapping.
Ignore Errors and Proceed: Ignora a verificação de tabelas com os mesmos nomes.
AvisoSelecionar Ignore Errors and Proceed pode causar inconsistência de dados e riscos para o negócio. Por exemplo:
Se os schemas das tabelas forem consistentes e um registro no banco de dados de destino tiver o mesmo valor de chave primária que um registro no banco de dados de origem:
Durante a migração completa, o DTS mantém o registro no banco de dados de destino. O registro do banco de dados de origem não é migrado.
Durante a migração incremental, o DTS não mantém o registro no banco de dados de destino. O registro do banco de dados de origem sobrescreve o registro no banco de dados de destino.
Se os schemas das tabelas forem inconsistentes, apenas algumas colunas de dados poderão ser migradas, ou a migração poderá falhar. Prossiga com cautela.
Capitalization of Object Names in Destination Instance
Você pode configurar a política de diferenciação entre maiúsculas e minúsculas para os nomes dos objetos migrados, como bancos de dados, tabelas e colunas, na instância de destino. Por padrão, a opção DTS default policy está selecionada. Também é possível optar por manter a diferenciação de maiúsculas e minúsculas consistente com a política padrão do banco de dados de origem ou de destino. Para mais informações, consulte Case sensitivity of object names in the destination database.
Source Objects
Na caixa Source Objects, clique em nos objetos que deseja migrar e, em seguida, clique em
para movê-los para a caixa Selected Objects.NotaÉ possível selecionar objetos para migração no nível de banco de dados, tabela ou coluna. Se você selecionar apenas tabelas ou colunas como objetos de migração, outros objetos como views, triggers e stored procedures não serão migrados para o banco de dados de destino.
Selected Objects
Na caixa Selected Objects, clique com o botão direito em um banco de dados. Na caixa de diálogo Edit Schema, altere o valor de Schema Name para o nome do schema de destino no banco de dados Oracle autogerenciado. Para mais informações, consulte Map table and column names.
NotaPara selecionar as operações SQL a serem migradas no nível de tabela, clique com o botão direito no objeto de migração na caixa Selected Objects. Na caixa de diálogo exibida, selecione as operações SQL desejadas. Para mais informações sobre as operações suportadas, consulte SQL operations that support incremental migration.
Para definir condições de filtragem de dados, clique com o botão direito na tabela a ser migrada na caixa Selected Objects. Na caixa de diálogo exibida, defina as condições de filtro. Para mais informações sobre como definir condições de filtro, consulte Set filter conditions.
Se você usar o recurso de mapeamento de nomes de objetos, outros objetos que dependem do objeto mapeado poderão falhar na migração.
-
Clique em Next: Advanced Settings para configurar parâmetros avançados.
Configuração
Descrição
Dedicated Cluster for Task Scheduling
Por padrão, o DTS agenda tarefas em um cluster compartilhado, sem necessidade de seleção. Se você precisar de tarefas mais estáveis, adquira um dedicated cluster para executar as tarefas de migração do DTS.
Retry Time for Failed Connections
Após o início da tarefa de migração, se a conexão com o banco de dados de origem ou de destino falhar, o DTS reportará um erro e iniciará imediatamente uma nova tentativa de conexão. A duração padrão de nova tentativa é de 720 minutos. Você pode personalizar o tempo de nova tentativa para um valor entre 10 e 1440 minutos. Recomendamos definir a duração para mais de 30 minutos. Se o DTS conseguir reconectar aos bancos de dados de origem e destino dentro da duração especificada, a tarefa de migração será retomada automaticamente. Caso contrário, a tarefa falhará.
NotaPara múltiplas instâncias do DTS que compartilham a mesma origem ou destino, o tempo de nova tentativa de rede é determinado pela configuração da última tarefa criada.
Como a cobrança da tarefa continua durante o período de nova tentativa de conexão, recomendamos personalizar o tempo de nova tentativa de acordo com as necessidades do seu negócio, ou liberar a instância do DTS o mais rápido possível após a liberação das instâncias dos bancos de dados de origem e destino.
Retry Time for Other Issues
Após o início da tarefa de migração, se ocorrer um problema não relacionado à conectividade no banco de dados de origem ou de destino — como uma exceção na execução de DDL ou DML —, o DTS reportará um erro e iniciará imediatamente uma nova tentativa da operação. A duração padrão de nova tentativa é de 10 minutos. Você pode personalizar o tempo de nova tentativa para um valor entre 1 e 1440 minutos. Recomendamos definir a duração para mais de 10 minutos. Se as operações relacionadas forem concluídas com sucesso dentro da duração de nova tentativa especificada, a tarefa de migração será retomada automaticamente. Caso contrário, a tarefa falhará.
ImportanteO valor de Retry Time for Other Issues deve ser menor que o valor de Retry Time for Failed Connections.
Enable Throttling for Full Data Migration
Durante a migração completa, o DTS consome recursos de leitura e gravação nos bancos de dados de origem e destino, o que pode aumentar a carga do banco de dados. Se necessário, ative a limitação de taxa para a tarefa de migração completa. Defina os valores de Queries per second (QPS) to the source database, RPS of Full Data Migration e Data migration speed for full migration (MB/s) para reduzir a carga no banco de dados de destino.
NotaEste item de configuração fica disponível apenas quando você seleciona Full Data Migration em Migration Types.
Você também pode adjust the full migration speed após a instância de migração estar em execução.
Enable Throttling for Incremental Data Migration
Se necessário, você também pode optar por definir limites de velocidade para a tarefa de migração incremental. Defina os valores de RPS of Incremental Data Migration e Data migration speed for incremental migration (MB/s) para reduzir a carga no banco de dados de destino.
NotaEste item de configuração fica disponível apenas quando você seleciona Incremental Data Migration em Migration Types.
Você também pode adjust the incremental migration speed após a instância de migração estar em execução.
Environment Tag
Se necessário, selecione uma tag de ambiente para identificar a instância de migração. Neste exemplo, nenhuma tag de ambiente foi selecionada.
Whether to delete SQL operations on heartbeat tables of forward and reverse tasks
Escolha se deseja gravar informações de heartbeat SQL no banco de dados de origem enquanto a instância do DTS estiver em execução.
-
Yes: As informações de heartbeat SQL não são gravadas no banco de dados de origem. Isso pode fazer com que a instância do DTS reporte atraso.
-
No: Grava as informações de heartbeat SQL no banco de dados de origem. Isso pode interferir em recursos como backup físico e clonagem do banco de dados de origem.
Configure ETL
Com base nas necessidades do seu negócio, selecione se deseja configurar o ETL feature para processar dados.
Yes: Configura o recurso de ETL. Você também deve inserir data processing statements na caixa de texto.
No: Não configura o recurso de ETL.
Monitoring and Alerting
Selecione se deseja definir alertas e receber notificações de alerta com base nas necessidades do seu negócio.
No: Não define alertas.
Yes: Configure alertas definindo um alert threshold e um notificações de alerta. Se uma migração falhar ou a latência exceder o limiar, o sistema enviará uma notificação de alerta.
-
Clique em Next: Data Validation para configurar uma tarefa de validação de dados.
Para mais informações sobre o recurso de validação de dados, consulte Configure data validation.
-
-
Salve a tarefa e execute uma pré-verificação.
Para visualizar os parâmetros de configuração desta instância ao chamar a operação de API, posicione o ponteiro sobre o botão Next: Save Task Settings and Precheck e clique em Preview OpenAPI parameters na bolha exibida.
Se você não precisar visualizar ou já tiver terminado de visualizar os parâmetros de API, clique em Next: Save Task Settings and Precheck na parte inferior da página.
NotaAntes do início da tarefa de migração, o DTS realiza uma pré-verificação. A tarefa só será iniciada após a aprovação na pré-verificação.
Se a pré-verificação falhar, clique em View Details ao lado do item com falha, corrija o problema com base na orientação exibida e execute a pré-verificação novamente.
-
Se um aviso for reportado durante a pré-verificação:
Para itens de verificação que não podem ser ignorados, clique em View Details ao lado do item com falha, corrija o problema com base na orientação exibida 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 para ignorar o item de aviso e executar a pré-verificação novamente. Se optar por ignorar um aviso, isso pode causar problemas como inconsistência de dados e representar riscos para o seu negócio.
-
Adquira a instância.
Quando a Success Rate estiver em 100%, clique em Next: Purchase Instance.
-
Na página Purchase, selecione a especificação de link para a instância de migração de dados. Para mais informações, consulte a tabela a seguir.
Categoria
Parâmetro
Descrição
New Instance Class
Resource Group Settings
Selecione o grupo de recursos ao qual a instância pertence. O valor padrão é o grupo de recursos padrão. Para mais informações, consulte What is resource management?
Instance Class
O DTS oferece especificações de migração com diferentes níveis de desempenho. A especificação de link afeta a velocidade da migração. Escolha uma especificação adequada ao seu cenário de negócios. Para mais informações, consulte Data migration link specifications.
Após concluir a configuração, leia e selecione Data Transmission Service (Pay-as-you-go) Service Terms.
-
Clique em Buy and Start. Na caixa de diálogo OK exibida, clique em OK.
Você pode acompanhar o progresso da tarefa de migração na página de lista Data Migration Tasks.
NotaSe a tarefa de migração não incluir migração incremental, ela será interrompida automaticamente após a conclusão da migração completa. Quando a tarefa parar, o Status mudará para Completed.
Se a tarefa de migração incluir migração incremental, ela não será interrompida automaticamente. A tarefa de migração incremental continua em execução. Enquanto estiver em execução, o Status da tarefa permanece como Running.