Ao atualizar uma instância do ApsaraDB RDS for MySQL para um cluster PolarDB for MySQL com um clique, o processo cria um cluster PolarDB de destino e sincroniza os dados com ele. O cluster PolarDB atualizado herda as contas, bancos de dados, lista de permissões de endereços IP e configurações de parâmetros necessárias da instância RDS de origem.
O processo de atualização inclui as seguintes etapas:
-
O recurso de atualização com um clique oferece suporte a dois métodos: migração física (replicação física) e migração lógica (sincronização de dados usando o Data Transmission Service (DTS)). Para obter mais informações, consulte Comparação entre migração física e migração lógica.
Migração física (replicação física): utilize este método para migrar instâncias de alta disponibilidade do ApsaraDB RDS for MySQL 5,6 e 5,7 que usam SSD local para um cluster PolarDB for MySQL da mesma versão.
Migração lógica (sincronização de dados usando DTS): aplica-se a todos os outros tipos de instâncias do ApsaraDB RDS for MySQL. É possível migrá-las para um cluster PolarDB for MySQL da mesma versão ou de uma versão diferente.
Para instruções detalhadas, consulte as etapas individuais.
-
Pré-requisitos:
(Opcional) Verificar a lista de permissões de endereços IP: se a lista de permissões de endereços IP da instância primária de origem for diferente das instâncias somente leitura, será necessário mesclar primeiro a lista de permissões das instâncias somente leitura na lista da instância primária. Isso garante que o sistema sincronize automaticamente a lista de permissões das instâncias somente leitura com o cluster PolarDB de destino.
-
Apenas para migração lógica:
Etapa 1: Migrar do RDS: na página de compra do PolarDB, defina Creation Method como Migrate from RDS e especifique a versão e a instância RDS de origem para criar um cluster PolarDB de destino.
(Opcional) Etapa 2: Adicionar endpoints: a atualização com um clique permite realizar um switchover com troca de endpoints. Dessa forma, você mantém os endpoints originais da instância RDS de origem. Suas aplicações podem alternar para o cluster PolarDB sem alterações de configuração. Observe que a troca de endpoints só é possível se eles existirem tanto na instância RDS de origem quanto no cluster PolarDB de destino.
Etapa 3: Realizar o switchover: alterne o status de leitura/gravação entre a instância RDS de origem e o cluster PolarDB de destino. Essa operação define a instância RDS de origem como Read Only e o cluster PolarDB de destino como read and write. A direção da replicação também é invertida, sincronizando novos dados do cluster PolarDB de destino de volta para a instância RDS de origem.
(Opcional) Etapa 4: Alternar a tarefa DTS da instância de origem: caso a instância de origem tenha uma tarefa DTS associada que não faça parte da migração com um clique, use este recurso para modificar a origem ou o destino da tarefa de sincronização ou migração do DTS, garantindo uma transição de negócios suave.
Etapa 5: Concluir a migração: quando a migração dos dados de negócios estiver completa e a sincronização de dados não for mais necessária, finalize todo o processo de atualização.
(Opcional) Cancelar assinatura ou liberar a instância RDS: se seus negócios estiverem executando de forma estável no cluster PolarDB e a instância RDS de origem não for mais necessária, cancele a assinatura ou libere-a.
-
-
Conecte-se à instância usando uma conta privilegiada.
-
Localize todas as contas de sistema
rootealiyun_root.SELECT * FROM mysql.user WHERE `user` IN ('root', 'aliyun_root'); -
Exclua as contas de sistema extras. A conta de sistema correta para o ApsaraDB RDS for MySQL 5,6 é
root. Portanto, você deve excluir a contaaliyun_root.DELETE FROM mysql.user WHERE `user` = 'aliyun_root' LIMIT n; Antes de iniciar a migração, recomendamos concluir primeiro a avaliação de migração.
Certifique-se de que o cluster PolarDB possua mais espaço de armazenamento do que a instância RDS de origem antes de começar.
Ao migrar dados usando o Data Transmission Service (DTS), a fase de inicialização completa dos dados consome recursos de leitura e gravação nos bancos de dados de origem e de destino. Isso pode aumentar a carga do banco de dados. Ajuste a taxa de sincronização conforme necessário. Para instruções detalhadas, consulte Ajustar a taxa de migração.
Faça login no console PolarDB e clique em Create Cluster para acessar a página de compra do PolarDB.
-
Defina Billing Method como Subscription, Pay-As-You-Go ou Serverless.
Assinatura: o pagamento pelos nós de computação ocorre no momento da criação do cluster. O espaço de armazenamento é faturado por hora com base no volume real de dados, e as cobranças são deduzidas do saldo da sua conta.
Pagamento conforme o uso: nenhum pagamento antecipado é necessário. Tanto os nós de computação quanto o espaço de armazenamento (com base no volume real de dados) são faturados por hora, e as cobranças são deduzidas do saldo da sua conta.
Serverless: nenhum pagamento antecipado é necessário. Recursos como nós de computação, espaço de armazenamento e proxy de banco de dados são dimensionados dinamicamente e elasticamente com base na demanda real. O faturamento corresponde ao uso efetivo dos recursos dimensionados.
-
Configure os seguintes parâmetros.
NotaPara parâmetros não detalhados na tabela a seguir, consulte as seções relevantes em Comprar um cluster.
Parâmetro
Descrição
Creation Method
Selecione Migrate from RDS.
NotaAntes do switchover final da migração, o cluster PolarDB fica em estado somente leitura, e seu log binário é habilitado por padrão.
Region
Selecione a região onde a instância ApsaraDB RDS for MySQL de origem está localizada.
NotaO novo cluster PolarDB será criado nesta região.
Source RDS Engine
Tipo de mecanismo da instância RDS de origem. Este valor é fixo como MySQL e não pode ser alterado.
Source RDS Version
Versão da instância RDS de origem. Escolha entre 5,6, 5,7 ou 8,0.
Source RDS Instance
Selecione a instância RDS primária de origem.
Compatibility
Versão do mecanismo de banco de dados do cluster PolarDB de destino. É possível escolher a mesma versão da instância RDS de origem ou uma versão diferente.
Node Specifications
Selecione uma especificação conforme necessário. Recomendamos escolher uma especificação igual ou superior à da instância RDS de origem. Para obter mais informações sobre as especificações de nó do PolarDB, consulte Especificações de nó de computação para Enterprise Edition.
Mecanismo de armazenamento
Escolha entre InnoDB ou InnoDB & X-Engine.
NotaInnoDB & X-Engine: implantação de mecanismo híbrido de InnoDB e X-Engine. Ao selecionar esta opção, defina a proporção de armazenamento para o X-Engine. Para obter mais informações, consulte X-Engine.
No canto superior direito, verifique a configuração do cluster, defina a Subscription Duration (para clusters de assinatura) e a Quantity, e especifique se deseja ativar a Auto-renewal.
Leia e selecione os termos de serviço. Clique em Buy Now.
-
Na página Pay, confirme os detalhes do pedido e o método de pagamento e clique em Purchase.
NotaApós o pagamento bem-sucedido, a criação do cluster leva de 10 a 15 minutos. Em seguida, localize o novo cluster na lista Clusters.
Se o status de um nó no cluster for Creating, a criação ainda não foi concluída e o cluster está indisponível. Ele estará disponível apenas quando o status mudar para Running.
Certifique-se de ter selecionado a região correta. Caso contrário, não será possível encontrar o cluster criado.
Após a criação do cluster, faça login no console PolarDB e clique no ID do cluster para acessar a página Basic Information.
-
Na seção RDS Migration da página Basic Information, confirme se a Replication Latency do cluster PolarDB de destino é inferior a 60 segundos. Em seguida, prossiga para a Etapa 3: Realizar o switchover.
Neste ponto, o Status é Synchronizing Data, o Source RDS Read/Write Status é read and write, e o PolarDB Read/Write Status é read-only.
NotaNão é possível migrar ou atualizar instâncias que possuem uma tarefa de sincronização DTS bidirecional existente usando o recurso de um clique. Caso contrário, poderão ocorrer problemas de inconsistência de dados.
Após a criação do cluster, a sincronização de dados da instância RDS começa. Execute a Etapa 5: Concluir a migração dentro de 30 dias. Caso contrário, o recurso de migração será desativado automaticamente.
-
Se estiver usando migração lógica (sincronização de dados via DTS) e o status da migração RDS mudar para Pre-check failed após a criação do cluster PolarDB, siga as instruções na Error Message para resolver o problema.
Por exemplo, se existir um gatilho na instância RDS de origem, a pré-verificação falhará e relatará o erro "The RDS instance has a trigger". Exclua o gatilho da instância RDS de origem e clique em Continue migrating. Alternativamente, clique em Give up migration e crie manualmente uma tarefa de migração no console DTS. Para detalhes, consulte Como configurar uma tarefa de sincronização ou migração quando o banco de dados de origem contém gatilhos.
Nesta etapa, é possível optar por Give up migration. Para informações sobre os impactos, consulte FAQ.
Adicione endpoints somente após o cluster de destino estar no estado de execução. Configure também propriedades de endpoint, parâmetros de instância e adicione nós somente leitura conforme as necessidades do seu negócio.
Para trocar endpoints privados durante um switchover, garanta que a instância RDS de origem e o cluster PolarDB de destino estejam na mesma VPC. Caso contrário, seus serviços originais não conseguirão se conectar após o switchover.
Acesse o console PolarDB.
Localize o cluster de destino e clique em seu ID.
-
Na seção RDS Migration da página Basic Information, clique em Switch Over.
A tarefa de sincronização de dados DTS exibida na página é uma tarefa gratuita. Não modifique essa tarefa manualmente. Caso contrário, a migração falhará.
NotaO processo de switchover geralmente leva menos de 5 minutos.
Esta operação alterna o status de leitura/gravação entre a instância RDS de origem e o cluster PolarDB de destino. A instância RDS de origem é definida como Read-only, e o cluster PolarDB é definido como read and write. A direção da replicação também é invertida, de modo que novos dados do cluster PolarDB são sincronizados com a instância RDS.
-
Na caixa de diálogo Switch Business to New Database, selecione Switch with Endpoints (No Application Configuration Change Required) ou Switch without Endpoints (Application Needs to Be Reconfigured to New PolarDB Endpoint).
-
Se selecionar Switch with Endpoints (No Application Configuration Change Required), siga estas etapas:
-
Selecione Switch with Endpoints (No Application Configuration Change Required). O sistema troca automaticamente os endpoints da instância RDS de origem e do cluster PolarDB de destino. Nenhuma modificação de configuração na aplicação é necessária para conectar-se ao cluster PolarDB de destino.
ImportanteAntes de selecionar Switch with Endpoints (No Application Configuration Change Required), leia atentamente as Observações sobre switchover com endpoints.
Clique em OK.
-
-
Se selecionar Switch without Endpoints (Application Needs to Be Reconfigured to New PolarDB Endpoint), siga estas etapas:
Selecione Switch without Endpoints (Application Needs to Be Reconfigured to New PolarDB Endpoint).
Clique em OK.
Atualize a página. Quando o Read/Write Status do cluster PolarDB de destino mudar para read and write, atualize o endpoint do banco de dados em suas aplicações o mais rápido possível.
NotaApós o switchover, caso encontre inconsistências de dados ou outros problemas, execute uma reversão da migração para restaurar rapidamente o estado anterior à atualização. Em seguida, escolha cancelar a migração para reverter ao estado anterior ao switchover.
-
Se a instância RDS de origem não tiver tarefas DTS associadas (além da tarefa de migração com um clique), o botão para este recurso não será exibido. Ignore esta etapa.
Caso a instância de origem tenha uma tarefa DTS associada (além da tarefa de migração com um clique), use este recurso para modificar a instância de origem ou de destino da tarefa de sincronização ou migração do DTS, garantindo uma transição de negócios suave. Para informações sobre o princípio de funcionamento e precauções, consulte Modificar a instância de origem ou de destino de uma tarefa DTS.
Durante as fases de sincronização de esquema e sincronização completa de dados, não execute operações DDL que alterem o esquema do banco de dados ou da tabela. Caso contrário, a tarefa de migração de dados falhará.
Acesse o console PolarDB.
Localize o cluster de destino e clique em seu ID.
Na seção RDS Migration da página Basic Information, clique em Source Instance DTS Task Switchover.
-
Na caixa de diálogo Switch Over Business DTS Task Endpoint, selecione Source Instance DTS Task (Forward Switchover) ou Destination Instance DTS Task (Switchover Rollback).
ImportanteAntes do switchover, verifique o status da sincronização de dados DTS para as instâncias de origem e de destino. Para obter mais informações, consulte Visualizar o status de uma tarefa DTS.
-
Se selecionar Source Instance DTS Task (Forward Switchover), siga estas etapas:
Selecione a tarefa DTS cuja instância de banco de dados você deseja alternar.
Clique em Commit Forward Switchover.
-
Se selecionar Target Instance DTS Task (Switchover Rollback), siga estas etapas:
Selecione a tarefa DTS cuja instância de banco de dados você deseja reverter.
Clique em Commit Switchover Rollback.
-
Source Instance DTS Task (Forward Switchover) aplica-se após um switchover (Etapa 3) para alternar uma tarefa DTS associada (diferente da tarefa de migração com um clique) da instância de origem para a instância de destino. Esta operação é realizada após o switchover (Etapa 3) e antes de concluir a migração (Etapa 5).
Target Instance DTS Task (Switchover Rollback) aplica-se após uma reversão da migração para alternar uma tarefa DTS associada (diferente da tarefa de migração com um clique) da instância de destino de volta para a instância de origem. Esta operação é realizada após uma (Opcional) reversão da migração e antes de você (Opcional) cancelar a migração.
Antes de executar a operação Complete Migration, certifique-se de que a migração de dados está completa e que a sincronização não é mais necessária. Para migração física, esta operação interrompe a replicação de dados da instância RDS de origem para o cluster PolarDB. Para migração lógica, ela exclui a tarefa de sincronização de dados.
Esta operação interrompe a sincronização de dados entre o cluster PolarDB e a instância RDS, tornando o recurso de (Opcional) cancelar migração indisponível. Recomendamos executar seus negócios no cluster PolarDB por um período para confirmar que tudo funciona conforme o esperado antes de realizar esta operação.
Faça login no console PolarDB.
Localize o cluster de destino e clique em seu ID.
-
Na seção RDS Migration da página Basic Information, clique em Complete Migration e, na caixa de diálogo exibida, clique em OK.
NotaApós clicar em OK, o sistema interrompe a relação de sincronização em cerca de 2 minutos. Durante esse tempo, o status da migração é Disable Synchronization. Aguarde a conclusão do processo.
Na caixa de diálogo Complete Migration, escolha se deseja desativar o log binário do cluster PolarDB. Desativar o log binário proporciona uma leve melhoria no desempenho de gravação, mas o cluster PolarDB reinicia automaticamente para que a nova configuração tenha efeito.
Se a instância RDS de origem não for mais necessária, cancele a assinatura ou libere-a manualmente. Para detalhes, consulte (Opcional) Cancelar assinatura ou liberar a instância RDS.
Se precisar renovar ou alterar a configuração da instância RDS de origem, clique primeiro em Complete Migration.
Para instâncias RDS de assinatura, cancele a assinatura. Para detalhes, consulte Cancelar assinatura de uma instância primária de assinatura.
Para instâncias RDS de pagamento conforme o uso, libere-as em tempo hábil para evitar desperdício de recursos. Para detalhes, consulte Liberar ou cancelar assinatura de uma instância.
Acesse o console PolarDB.
Localize o cluster de destino e clique em seu ID.
Na seção RDS Migration da página Basic Information, clique no nome da tarefa em DTS Data Synchronization Task para acessar a lista de tarefas de sincronização de dados no console DTS.
-
Localize a tarefa de sincronização de dados correspondente. Visualize detalhes de falha na pré-verificação, detalhes da tarefa e logs da tarefa.
A página de detalhes da tarefa exibe informações básicas (como Task Instance ID, Task Name, Task Steps: schema synchronization → full data synchronization → incremental synchronization, Creation Time, Billing Method, Link Specification e Region), informações de origem (Instance Type: RDS Instance, Database Type: MySQL, Region, Instance ID, Connection Method: Non-encrypted Connection) e informações de destino (Instance Type: Cloud Instance, Database Type: PolarDB MySQL, Region, Instance ID, Connection Method: Non-encrypted Connection). No painel de navegação à esquerda, alterne para páginas como Synchronization Details, Performance Monitoring, Task Logs e Synchronization Object Modification History.
Durante o processo de migração, se precisar ajustar os objetos de sincronização da tarefa (por exemplo, se um novo banco de dados for adicionado à instância RDS de origem e você quiser incluí-lo na sincronização), clique em Modify Synchronization Objects para reconfigurar.
Após o switchover, caso encontre inconsistências de dados ou outros problemas, execute uma reversão da migração para restaurar rapidamente o estado anterior à atualização. Em seguida, escolha cancelar a migração para reverter ao estado anterior ao switchover.
Pré-requisitos
Verificar a função vinculada ao serviço do PolarDB (apenas para migração lógica)
Se você já concluiu a avaliação de migração e nenhuma exceção foi relatada, ignore esta verificação.
Antes de executar uma atualização com um clique usando migração lógica (sincronização de dados via Data Transmission Service (DTS)), verifique se uma função vinculada ao serviço do PolarDB foi criada e se o DTS recebeu permissões para acessar recursos em nuvem.
Excluir contas de sistema extras (apenas para migração lógica)
Se você já concluiu a avaliação de migração e nenhuma exceção foi relatada, ignore esta verificação.
Para garantir a compatibilidade das contas de sistema entre o ApsaraDB RDS for MySQL e o PolarDB, além de evitar que as contas de sistema no cluster PolarDB de destino sejam sobrescritas, a instância RDS de origem não pode ter as contas root e aliyun_root simultaneamente. Portanto, exclua quaisquer contas de sistema extras da instância RDS de origem antes de iniciar a atualização.
A tabela a seguir lista os nomes corretos das contas de sistema para diferentes versões do ApsaraDB RDS for MySQL:
|
Versão do RDS for MySQL |
Nome da conta de sistema |
|
ApsaraDB RDS for MySQL 5,6 |
root |
|
ApsaraDB RDS for MySQL 5,7 |
aliyun_root |
|
ApsaraDB RDS for MySQL 8,0 |
aliyun_root |
Para cada versão, exclua todas as contas de sistema exceto a correta. Por exemplo, a conta de sistema correta para uma instância ApsaraDB RDS for MySQL 5,7 é aliyun_root. Se você criou manualmente uma conta root no console, deverá excluí-la. Antes de excluir a conta, certifique-se de que ela não esteja sendo usada por seus negócios.
Contas de sistema podem ter sido criadas por você ou pelo sistema e remanescentes de uma atualização de versão. Em alguns casos, essas contas podem não estar visíveis no console.
Exemplo
As etapas a seguir mostram como limpar contas de sistema extras de uma instância ApsaraDB RDS for MySQL 5,6:
(Opcional) Verificar a lista de permissões de endereços IP
Se as listas de permissões de endereços IP das instâncias primária e somente leitura de origem forem diferentes, será necessário mesclar previamente as listas das instâncias somente leitura na lista da instância primária. Isso garante que as listas de permissões das instâncias somente leitura sejam sincronizadas automaticamente com o cluster PolarDB de destino.
Etapa 1: Migrar do RDS
Esta operação cria um cluster PolarDB com os mesmos dados da instância RDS de origem. Os dados incrementais da instância RDS de origem são sincronizados com este cluster PolarDB em tempo real.
(Opcional) Etapa 2: Adicionar endpoints
A migração com um clique do PolarDB suporta switchover com troca de endpoints, permitindo manter os endpoints originais do banco de dados. Suas aplicações podem alternar para o PolarDB sem alterações de configuração. Observe que a troca de endpoints só é possível se eles existirem tanto na instância RDS de origem quanto no cluster PolarDB de destino. Por padrão, apenas um endpoint primário privado e um endpoint de cluster privado são criados no destino. Se a origem tiver mais de dois endpoints, crie os endpoints correspondentes no destino antes do switchover. Caso contrário, eles não serão trocados. Para informações sobre como criar endpoints para clusters PolarDB e instâncias RDS, consulte Gerenciar endpoints e Configurar um endpoint.
Etapa 3: Realizar o switchover
Quando a Replication Latency do cluster PolarDB de destino for inferior a 60 segundos, execute o switchover.
(Opcional) Etapa 4: Alternar a tarefa DTS de origem
Etapa 5: Concluir a migração
Após concluir a Etapa 1: Migrar do RDS, execute a operação Complete Migration dentro de 30 dias.
(Opcional) Liberar a instância RDS
Após migrar os dados do RDS para o PolarDB, se seus negócios estiverem executando de forma estável no PolarDB e a instância RDS de origem não for mais necessária, cancele a assinatura ou libere-a.
(Opcional) Visualizar detalhes da tarefa DTS (apenas para migração lógica)
Se encontrar um erro de migração (como falha na pré-verificação) ou outras exceções (como alta latência de replicação) durante a atualização via migração lógica (sincronização de dados usando DTS), visualize a página de detalhes da tarefa de sincronização de dados DTS correspondente para obter mais informações.