Explore as opções da ferramenta de migração

Concluído

Há várias ferramentas que você pode usar para planejar e migrar dados para um banco de dados do Azure para servidor flexível MySQL. Cada opção tem seus prós e contras, conforme explicado nas seções a seguir.

Descubra e avalie suas cargas de trabalho do MySQL usando o Azure Migrate

O Azure Migrate oferece um hub centralizado para descobrir, avaliar e migrar a infraestrutura local, incluindo servidores, bancos de dados e aplicativos Web hospedados em ambientes físicos, para destinos de Plataforma como Serviço (PaaS) e Infraestrutura como Serviço (IaaS) do Azure em escala. A funcionalidade de descoberta e avaliação do MySQL no Azure Migrate (visualização) ajuda você durante a fase de planejamento , permitindo que você:

  • Descubra instâncias MySQL e seus atributos em seu ambiente,
  • Avaliar sua prontidão para a migração para o Banco de Dados do Azure para MySQL – Servidor Flexível, e
  • Receba recomendações sobre o SKU de computação e armazenamento apropriado para hospedar cargas de trabalho do MySQL no Banco de Dados do Azure para MySQL – Servidor Flexível, juntamente com os custos associados.

CLI de importação do Banco de Dados do Azure para MySQL

O Banco de Dados do Azure para Importação do MySQL é um único comando da CLI que permite migrar sua carga de trabalho local ou de máquina virtual (VM) do MySQL diretamente para o Banco de Dados do Azure para MySQL - Servidor Flexível. Oferece um caminho de migração simples e rápido. O comando provisiona seu servidor flexível de destino configurado de acordo com as entradas do usuário e, em seguida, restaura seu arquivo de backup físico (obtido usando o Percona XtraBackup) do servidor de origem armazenado na conta de armazenamento de Blob do Azure para a instância do Servidor Flexível de destino.

O comando CLI é: az mysql flexible-server --import

Ao avaliar a CLI de importação, não se esqueça de levar em conta as seguintes considerações.

  • A configuração do servidor de origem deve incluir estes parâmetros e valores:

    lower_case_table_names = 1
    innodb_file_per_table = ON
    
  • O nome do espaço de tabela do sistema deve ter ibdata1 um tamanho igual a pelo menos 12 MB (o padrão do MySQL).

  • Somente o mecanismo InnoDB é suportado para migração.

  • Certos elementos no servidor de origem, como a configuração (firewalls, usuários, privilégios) não são migrados.

  • A alta disponibilidade (HA) é desativada durante a migração para otimizar o desempenho. Certifique-se de reativar o HA após a conclusão da migração.

Azure Database Migration Service

O Serviço de Migração de Banco de Dados do Azure é um serviço totalmente gerenciado que ajuda a simplificar, orientar e automatizar suas migrações de banco de dados para plataformas de dados do Azure.

O Serviço de Migração de Banco de Dados do Azure funciona criando e executando projetos de migração repetíveis. As fontes variam de cargas de trabalho locais a cargas de trabalho baseadas em nuvem, como o Amazon RDS MySQL. Embora o Serviço de Migração de Banco de Dados do Azure seja tecnicamente uma ferramenta de migração offline, ele usa o MySQL binlog para executar migrações online com tempo de inatividade quase nulo.

mysqldump

O mysqldump utilitário cliente, normalmente instalado junto com o MySQL, é uma ferramenta de backup de banco de dados. Você pode usar mysqldump para despejar o esquema e o conteúdo de um banco de dados de origem em instruções SQL. Em seguida, você pode executar essas instruções como estão para restaurar o conteúdo total ou parcial para o banco de dados de destino.

Para grandes conjuntos de dados, restaurar o despejo executando as instruções SQL pode ter um desempenho insatisfatório. Por exemplo, os índices são atualizados uma declaração de cada vez, o que pode sobrecarregar o desempenho de input/output do disco. Por isso, você pode acelerar uma migração emparelhando mysqldump com ferramentas como mydumper e myloader, que são otimizadas para migração de dados em massa. Use mysqldump para recriar o esquema do banco de dados, que é uma zona de aterrissagem no banco de dados de destino, para acomodar os dados que estão sendo importados.

Às vezes, você precisa personalizar a transferência de dados de migração. Talvez você queira exportar um subconjunto de dados para teste ou substituir os dados do banco de dados de destino para um cliente. Você pode até modificar os dados, como editar dados pessoais para depurar um problema em um banco de dados de teste, antes de migrá-lo.

Nesses cenários, mysqldump fornece a maior flexibilidade. Como ele exporta um arquivo que contém instruções SQL, você pode escolher como modificar os dados antes de executar as instruções no servidor de destino.

mydumper e myloader

mydumper e myloader fazem parte do pacote MyDumper , uma ferramenta de backup MySQL de código aberto. Ao contrário da mysqldump ferramenta, que produz todo o esquema para instruções SQL para serem executadas novamente linearmente, as ferramentas MyDumper aproveitam o paralelismo e fornecem benefícios como o uso de arquivos separados por tabela e formatos legíveis por humanos, bem como a manutenção de posições precisas de log binário de origem e destino.

Para migrar grandes bancos de dados, mydumper e myloader são recomendados porque essas ferramentas oferecem 10 vezes ou mais desempenho usando paralelismo.

As ferramentas estão disponíveis como versões binárias para Linux como pacotes rpm e deb, e para macOS via Homebrew. Em outras plataformas, você precisa compilar as ferramentas a partir do código-fonte, o que introduz complexidade.

Banco de trabalho MySQL

O MySQL Workbench fornece uma interface gráfica do usuário (GUI) para trabalhar com o MySQL e oferece acesso a muitas ferramentas, incluindo uma para migração de banco de dados. O MySQL Workbench está disponível nas edições comunitárias e comerciais do MySQL, conforme indicado na lista de recursos do MySQL Workbench.

Binlog do MySQL

A mysqlbinlogferramenta usa o log binário do MySQL, que registra eventos de alteração do banco de dados, como modificações de tabelas ou inserções de dados, atualizações e exclusões. Cada alteração é identificada usando uma posição incrementalmente crescente

Você pode usar o log binário como parte de migrações online e offline:

  • Com migrações online, o log binário é o principal mecanismo para replicar alterações de dados em tempo real da origem para o destino.
  • Com migrações offline, o log binário permite migrações incrementais gerando com precisão alterações desde um snapshot migrado anteriormente.

A manutenção de log binário requer recursos adicionais de processamento e armazenamento.