Guia de migração: MySQL para SQL Server

Aplica-se a:SQL Server

Neste guia, você aprenderá a migrar seus bancos de dados MySQL para o SQL Server.

Para obter outros guias de migração, confira Guias de Migração do Banco de Dados do Azure.

Pré-requisitos

Antes de começar a migrar seu banco de dados MySQL para o SQL Server:

Pré-migração

Depois de atender aos pré-requisitos, você já poderá descobrir seu ambiente MySQL de origem e avaliar a viabilidade da migração.

Avaliar

Use o SSMA para MySQL para examinar dados e objetos de banco de dados e avaliar os bancos de dados para migração.

Para criar uma avaliação:

  1. Abra o SSMA para MySQL.

  2. No menu Arquivo, selecione Novo Projeto.

  3. Insira o nome do projeto e um local para salvar seu projeto e o destino de migração. Em seguida, selecione SQL Server na opção Migrar para.

    Screenshot that shows New Project option.

  4. Insira os detalhes da conexão na caixa de diálogo Conectar-se ao MySQL e conecte-se ao servidor MySQL.

    Screenshot that shows Connect to MySQL option.

  5. Selecione os bancos de dados MySQL que você deseja migrar.

    Screenshot that shows selecting the MySQL database you want to migrate.

  6. Clique com o botão direito do mouse no banco de dados MySQL no Gerenciador de Metadados do MySQL e selecione Criar Relatório. Você também pode selecionar a guia Criar Relatório no canto superior direito.

    Screenshot that shows Create Report feature.

  7. Examine o relatório HTML para entender as estatísticas de conversão e outros erros ou avisos. Também é possível abrir o relatório no Excel para ver um inventário de objetos do MySQL e o esforço necessário para executar as conversões de esquema. A pasta dentro de SSMAProjects é o local padrão de alocação de relatórios, conforme mostrado aqui:

    drive:\Users\<username>\Documents\SSMAProjects\MySQLMigration\report\report_2016_11_12T02_47_55\.

    Screenshot that shows a conversion report.

Validar mapeamentos de tipo

Valide os mapeamentos de tipo de dados padrão e altere-os com base nos requisitos, se necessário. Para fazer isso:

  1. No menu Ferramentas, selecione Configurações do Projeto.

  2. Selecione a guia Mapeamento de Tipos.

    Screenshot that shows Type Mapping feature.

  3. Você pode alterar o mapeamento de tipo de cada tabela selecionando a tabela no Gerenciador de Metadados do MySQL.

Saiba mais sobre as configurações de conversão no SSMA para MySQL em Configurações do Projeto (Conversão) (MySQLToSQL).

Converter o esquema

A conversão de objetos de banco de dados usa as definições de objeto do MySQL, converte-as em objetos SQL Server semelhantes e, em seguida, carrega essas informações nos metadados do SSMA para MySQL. Ela não carrega as informações na instância do SQL Server. Em seguida, você pode exibir os objetos e as propriedades deles usando o Gerenciador de Metadados do SQL Server.

Durante a conversão, o SSMA para MySQL imprime as mensagens de saída no painel de saída e as mensagens de erro no painel Lista de Erros. Use as informações de saída e erro para determinar se você precisa modificar seus bancos de dados do MySQL ou seu processo de conversão para obter os resultados de conversão desejados.

Para converter o esquema:

  1. (Opcional) Para converter consultas dinâmicas ou ad hoc, clique com o botão direito do mouse no nó e selecione Adicionar Instrução.

  2. Selecione a guia Conectar-se ao SQL Server.

    1. Insira os detalhes de conexão da instância do SQL Server.
    2. Selecione o banco de dados de destino na lista suspensa ou insira um novo nome. Se você inserir um novo nome, um banco de dados será criado no servidor de destino.
    3. Insira os detalhes de autenticação e, em seguida, selecione Conectar.

    Screenshot that shows Connect to SQL Server.

  3. Clique com o botão direito do mouse no banco de dados MySQL no Gerenciador de Metadados do MySQL e selecione Converter Esquema. Você também pode selecionar a guia Converter Esquema no canto superior direito.

    Screenshot that shows Convert Schema option.

  4. Após a conclusão da conversão, compare e examine os objetos convertidos em relação aos originais para identificar possíveis problemas e solucioná-los com base nas recomendações.

    Screenshot that shows comparing and reviewing objects.

  5. Compare o texto Transact-SQL convertido com o código original e examine as recomendações.

    Screenshot that shows comparing and reviewing converted code.

  6. No painel de saída, selecione Examinar resultados e analise os erros no painel Lista de Erros.

  7. Salve o projeto localmente para realizar um exercício de correção de esquema offline. No menu Arquivo, selecione Salvar Projeto. Essa etapa dá a você a oportunidade de avaliar os esquemas de origem e de destino offline e executar a correção antes de publicar o esquema no SQL Server.

Para saber mais, confira Converter bancos de dados MySQL (MySQLToSQL).

Migração

Depois de implementar os pré-requisitos necessários e concluir as tarefas associadas à fase de pré-migração, você já poderá executar a migração de dados e de esquema.

Você tem duas opções de migração de dados:

  • Migração de dados no lado do cliente

    • Para executar a migração de dados no lado do cliente, selecione a opção Mecanismo de Migração de Dados no Lado do Cliente na caixa de diálogo Configurações do Projeto.

    Observação

    Quando o SQL Express Edition é usado como o banco de dados de destino, somente a migração de dado do lado do cliente é permitida e não há suporte para a migração de dados do lado do servidor.

  • Migração de dados no lado do servidor

    • Antes de executar a migração de dados no lado do servidor, verifique se:
      • O pacote de extensões do SSMA para MySQL está instalado na instância do SQL Server.
      • O serviço SQL Server Agent está sendo executado na instância do SQL Server.
    • Para executar a migração de dados no lado do servidor, selecione a opção Mecanismo de Migração de Dados no Lado do Servidor na caixa de diálogo Configurações do Projeto.

Importante

Se planejar usar o Mecanismo de Migração de Dados no Lado do Servidor, antes de migrar os dados, você precisará instalar o pacote de extensões do SSMA para MySQL e os provedores do MySQL no computador que está executando o SSMA para MySQL. O serviço SQL Server Agent também precisa estar em execução. Para obter mais informações sobre como instalar o pacote de extensões, confira Instalar componentes do SSMA no SQL Server (MySQLToSQL).

Para publicar seu esquema e migrar os dados:

  1. Publique o esquema clicando com o botão direito do mouse no banco de dados no Gerenciador de Metadados do SQL Server e selecionando Sincronizar com o Banco de Dados. Essa ação publica o banco de dados MySQL na instância do SQL Server.

    Screenshot that shows Synchronize with Database.

  2. Examine o mapeamento entre o projeto de origem e o destino.

    Screenshot that shows reviewing the synchronization with the database.

  3. Migre os dados clicando com o botão direito do mouse no objeto ou banco de dados que você deseja migrar no Gerenciador de Metadados do MySQL e selecionando Migrar Dados. Como alternativa, você pode selecionar a guia Migrar Dados. Para migrar dados para um banco de dados inteiro, marque a caixa de seleção ao lado do nome do banco de dados. Para migrar dados de tabelas individuais, expanda o banco de dados, expanda Tabelas e marque as caixas de seleção ao lado das tabelas. Para omitir dados de tabelas individuais, desmarque as caixas de seleção.

    Screenshot that shows Migrate Data option.

  4. Depois de concluída a migração, veja o Relatório de Migração de Dados.

    Screenshot that shows the Data Migration Report.

  5. Conecte-se à Instância do SQL Server usando o SQL Server Management Studio (SSMS) e valide a migração examinando os dados e o esquema.

    Screenshot that shows validation in SQL Server Management Studio.

Pós-migração

Depois de concluir com êxito o estágio de migração, é preciso realizar uma série de tarefas pós-migração para garantir que tudo esteja funcionando da maneira mais estável e eficiente possível.

Corrigir aplicativos

Depois de migrar os dados para o ambiente de destino, todos os aplicativos que anteriormente consumiam a origem precisarão começar a consumir o destino. Em alguns casos, a realização dessa tarefa exigirá alterações nos aplicativos.

Executar testes

A abordagem de teste para a migração de banco de dados consiste nas seguintes atividades:

  1. Desenvolver testes de validação: Para testar a migração do banco de dados, você precisa usar consultas SQL. Você deve criar as consultas de validação para executar nos bancos de dados de origem e de destino. As consultas de validação devem abranger o escopo que você definiu.
  2. Configurar ambiente de teste: o ambiente de teste deve conter uma cópia do banco de dados de origem e de destino. Lembre-se de isolar o ambiente de teste.
  3. Executar testes de validação: execute os testes de validação na origem e no destino e analise os resultados subsequentes.
  4. Executar testes de desempenho: execute os testes de desempenho na origem e no destino, analise e compare os resultados subsequentes.

Otimizar

A fase pós-migração é crucial para reconciliar quaisquer problemas com a precisão de dados, verificar a integridade e abordar problemas de desempenho com a carga de trabalho.

Observação

Para saber mais sobre esses problemas e sobre como mitigá-los, confira o Guia de validação e otimização pós-migração.

Ativos de migração

Para obter ajuda com a realização desse cenário de migração, consulte os recursos a seguir. Eles foram desenvolvidos para auxiliar em um compromisso de projeto de migração real.

Título Descrição
Modelo e Ferramenta de Avaliação de Carga de Trabalho de Dados Essa ferramenta dá sugestão das plataformas de destino de "melhor ajuste", da preparação para a nuvem e do nível de correção de aplicativo ou banco de dados para uma determinada carga de trabalho. Ela oferece cálculo fácil e permite gerar relatórios que ajudam a acelerar avaliações de grandes volumes fornecendo um processo de decisão de plataforma de destino uniforme e automatizado.
MySQL para SQL Server – Utilitário de Comparação de Banco de Dados O utilitário de Comparação de Banco de Dados é um aplicativo de console do Windows que você pode usar para verificar se os dados são idênticos nas plataformas de origem e de destino. Você pode usar a ferramenta para comparar dados com eficiência até o nível de linha ou da coluna em todas as tabelas, linhas e colunas selecionadas.

A equipe de engenharia de dados do SQL desenvolveu esses recursos. A principal responsabilidade dessa equipe é desbloquear e acelerar a modernização complexa para projetos de migração da plataforma de dados para a plataforma de dados do Microsoft Azure.