Guia de migração: SQL Server para o Banco de Dados SQL do Azure

Aplica-se a:Banco de Dados SQL do Azure do SQL Server

Neste guia, você aprenderá a migrar sua instância do SQL Server para o Banco de Dados SQL do Azure.

Você pode migrar o SQL Server em execução local ou em:

  • SQL Server nas Máquinas Virtuais
  • Amazon EC2 (nuvem de computação elástica)
  • Amazon RDS (serviço de banco de dados relacional) para SQL Server
  • Mecanismo de computação do Google
  • Cloud SQL para SQL Server - GCP (Google Cloud Platform)

Para obter mais informações sobre migração, consulte a visão geral da migração. Para obter outros guias de migração, consulte Migração de banco de dados.

Diagram of migration process flow.

Pré-requisitos

Para sua migração do SQL Server para o Banco de Dados SQL do Azure, verifique se você tem:

Pré-migração

Depois de verificar se o ambiente de origem é suportado, comece com o estágio de pré-migração. Descubra todas as fontes de dados existentes, avalie a viabilidade da migração e identifique quaisquer problemas de bloqueio que possam impedir sua migração para a nuvem do Azure.

Detetar

Na fase de descoberta, verifique a rede para identificar todas as instâncias e recursos do SQL Server usados pela sua organização.

Use o Azure Migrate para avaliar a adequação da migração de servidores locais, executar dimensionamento baseado em desempenho e fornecer estimativas de custo para executá-los no Azure.

Como alternativa, use o Microsoft Assessment and Planning Toolkit (o "MAP Toolkit") para avaliar sua infraestrutura de TI atual. O kit de ferramentas fornece uma poderosa ferramenta de inventário, avaliação e geração de relatórios para simplificar o processo de planejamento da migração.

Para obter mais informações sobre as ferramentas disponíveis para uso na fase de descoberta, consulte Serviços e ferramentas disponíveis para cenários de migração de dados.

Avaliação

Nota

Se você estiver avaliando todo o conjunto de dados do SQL Server em escala no VMware, use o Azure Migrate para obter recomendações de implantação do SQL do Azure, dimensionamento de destino e estimativas mensais.

Depois que as fontes de dados forem descobertas, avalie todos os bancos de dados do SQL Server locais que podem ser migrados para o Banco de Dados SQL do Azure para identificar bloqueadores de migração ou problemas de compatibilidade.

A extensão de migração SQL do Azure para o Azure Data Studio fornece uma experiência baseada em assistente perfeita para avaliar, obter recomendações do Azure e migrar seus bancos de dados do SQL Server no local para o SQL Server em Máquinas Virtuais do Azure. Além disso, destacando quaisquer bloqueadores ou avisos de migração, a extensão também inclui uma opção para recomendações do Azure para coletar dados de desempenho de seus bancos de dados para recomendar uma Instância Gerenciada SQL do Azure de tamanho certo para atender às necessidades de desempenho de sua carga de trabalho (com o menor preço).

Você pode usar a extensão de migração SQL do Azure para o Azure Data Studio para avaliar bancos de dados para obter:

Para avaliar seu ambiente usando a extensão de migração SQL do Azure, siga estas etapas:

  1. Abra a extensão de migração SQL do Azure para o Azure Data Studio.
  2. Conectar-se à instância do SQL Server de origem
  3. Clique no botão Migrar para o Azure SQL, no assistente de Migração do SQL do Azure no Azure Data Studio
  4. Selecione as bases de dados para avaliação e, em seguida, clique em Seguinte
  5. Selecione seu destino SQL do Azure, neste caso, Banco de Dados SQL do Azure (Visualização)
  6. Clique em Ver/Selecionar para rever o relatório de avaliação
  7. Procure problemas de bloqueio de migração e paridade de recursos. O relatório de avaliação também pode ser exportado para um arquivo que pode ser compartilhado com outras equipes ou funcionários da sua organização.
  8. Determine o nível de compatibilidade do banco de dados que minimiza os esforços pós-migração.

Para obter uma recomendação do Azure usando a extensão de migração do SQL do Azure, siga estas etapas:

  1. Abra a extensão de migração SQL do Azure para o Azure Data Studio.
  2. Conectar-se à instância do SQL Server de origem
  3. Clique no botão Migrar para o Azure SQL, no assistente de Migração do SQL do Azure no Azure Data Studio
  4. Selecione as bases de dados para avaliação e, em seguida, clique em Seguinte
  5. Selecione seu destino SQL do Azure, neste caso, Banco de Dados SQL do Azure (Visualização)
  6. Navegue até as seções de recomendações do Azure, clique em Obter recomendação do Azure
  7. Selecione Coletar dados de desempenho agora. Selecione uma pasta no computador local para armazenar os logs de desempenho e selecione Iniciar.
  8. Após 10 minutos, o Azure Data Studio indica que uma recomendação está disponível para o Banco de Dados SQL do Azure.
  9. Verifique o cartão do Banco de Dados SQL do Azure no painel de destino do SQL do Azure para revisar sua recomendação de SKU do Banco de Dados SQL do Azure

Para saber mais, consulte Tutorial: Migrar o SQL Server para o Banco de Dados SQL do Azure (visualização) offline no Azure Data Studio.

Se a avaliação encontrar vários bloqueadores para confirmar que seu banco de dados não está pronto para uma migração do Banco de Dados SQL do Azure, considere alternativamente:

  • Instância Gerenciada SQL do Azure se houver várias dependências com escopo de instância
  • SQL Server em Máquinas Virtuais do Azure se o Banco de Dados SQL e a Instância Gerenciada SQL não forem destinos adequados.

Avaliações e análises em escala

A extensão de Migração SQL do Azure para Azure Data Studio e Azure Migrate dá suporte à execução de avaliações dimensionadas e à consolidação dos relatórios de avaliação para análise.

Se você tiver vários servidores e bancos de dados que precisam ser avaliados e analisados em escala para fornecer uma visão mais ampla do conjunto de dados, consulte os links a seguir para saber mais:

Importante

A execução de avaliações em escala para vários bancos de dados, especialmente os grandes, também pode ser automatizada usando o Utilitário de Linha de Comando DMA e carregada no Azure Migrate para análise adicional e prontidão do destino.

Implante em uma instância gerenciada de tamanho ideal

Você pode usar a extensão de migração SQL do Azure para o Azure Data Studio para obter a recomendação de Instância Gerenciada SQL do Azure no tamanho certo. A extensão coleta dados de desempenho de sua instância do SQL Server de origem para fornecer recomendação do Azure de tamanho certo que atenda às necessidades de desempenho da sua carga de trabalho com custo mínimo. Para saber mais, consulte Obter recomendação do Azure do tamanho certo para o(s) seu(s) banco(s) de dados SQL Server local

Com base nas informações na fase de descoberta e avaliação, crie um Banco de Dados SQL do Azure de destino de tamanho apropriado. Você pode fazer isso usando o Guia de início rápido: criar um único banco de dados - Banco de Dados SQL do Azure.

Migrate

Depois de concluir as tarefas associadas ao estágio de pré-migração, você estará pronto para executar o esquema e a migração de dados.

Migre seus dados usando o método de migração escolhido.

Migrar usando a extensão de migração SQL do Azure para o Azure Data Studio

Para executar uma migração offline usando o Azure Data Studio, siga as etapas de alto nível abaixo. Para obter um tutorial passo a passo detalhado, consulte Tutorial: Migrar o SQL Server para o Banco de Dados SQL do Azure (visualização) offline no Azure Data Studio.

  1. Baixe e instale o Azure Data Studio e a extensão de migração SQL do Azure.
  2. Inicie o assistente Migrar para o Azure SQL Migration na extensão no Azure Data Studio.
  3. Selecione bancos de dados para avaliação e exiba a prontidão ou os problemas de migração (se houver). Além disso, colete dados de desempenho e obtenha a recomendação do Azure do tamanho certo.
  4. Selecione sua conta do Azure e seu Banco de Dados SQL do Azure de destino em sua assinatura.
  5. Selecione a lista de tabelas a serem migradas.
  6. Crie um novo Serviço de Migração de Banco de Dados do Azure usando o assistente no Azure Data Studio. Se você criou anteriormente um Serviço de Migração de Banco de Dados do Azure usando o Azure Data Studio, poderá reutilizar o mesmo, se desejar.
  7. Opcional: Se os backups estiverem em um compartilhamento de rede local, baixe e instale o tempo de execução de integração auto-hospedado em uma máquina que possa se conectar ao SQL Server de origem e ao local que contém os arquivos de backup.
  8. Inicie a migração do banco de dados e monitore o progresso no Azure Data Studio. Você também pode monitorar o progresso no recurso Serviço de Migração de Banco de Dados do Azure no portal do Azure.

Sincronização e substituição de dados

Ao usar opções de migração que replicam/sincronizam continuamente as alterações de dados da origem para o destino, os dados de origem e o esquema podem ser alterados e desviados do destino. Durante a sincronização de dados, certifique-se de que todas as alterações na origem sejam capturadas e aplicadas ao destino durante o processo de migração.

Depois de verificar se os dados são os mesmos na origem e no destino, você pode fazer o corte da origem para o ambiente de destino. É importante planejar o processo de transferência com as equipes de negócios/aplicativos para garantir que a interrupção mínima durante a transferência não afete a continuidade dos negócios.

Importante

Para obter detalhes sobre as etapas específicas associadas à execução de uma substituição como parte das migrações usando o DMS, consulte Executando a substituição de migração.

Migrar usando replicação transacional

Quando não for possível remover o banco de dados do SQL Server da produção enquanto a migração estiver ocorrendo, você poderá usar a replicação transacional do SQL Server como sua solução de migração. Para utilizar este método, a base de dados de origem tem de cumprir os requisitos para a replicação transacional e ser compatível com a Base de Dados SQL do Azure. Para obter informações sobre a replicação SQL com grupos de disponibilidade, consulte Configurar a replicação para grupos de disponibilidade Always On (SQL Server).

Para usar essa solução, configure seu banco de dados no Banco de Dados SQL do Azure como um assinante da instância do SQL Server que deseja migrar. O distribuidor de replicação transacional sincroniza os dados do banco de dados a serem sincronizados (o editor) enquanto novas transações continuam.

Com a replicação transacional, todas as alterações em seus dados ou esquema aparecem em seu banco de dados no Banco de Dados SQL do Azure. Quando a sincronização estiver concluída e você estiver pronto para migrar, altere a cadeia de conexão dos aplicativos para apontá-los para o banco de dados. Depois que a replicação transacional drenar todas as alterações deixadas no banco de dados de origem e todos os seus aplicativos apontarem para o Banco de Dados SQL do Azure, você poderá desinstalar a replicação transacional. Seu banco de dados no Banco de Dados SQL do Azure agora é seu sistema de produção.

Gorjeta

Também pode utilizar a replicação transacional para migrar um subconjunto da sua base de dados de origem. A publicação que replica para a Base de Dados SQL do Azure pode ser limitada a um subconjunto de tabelas na base de dados a ser replicada. Para cada tabela a ser replicada, pode limitar os dados a um subconjunto das linhas e/ou um subconjunto das colunas.

Fluxo de trabalho de replicação de transações

Importante

Use a versão mais recente do SQL Server Management Studio para permanecer sincronizado com as atualizações do Azure e do Banco de Dados SQL. As versões anteriores do SQL Server Management Studio não podem configurar a Base de Dados SQL como um subscritor. Obtenha a versão mais recente do SQL Server Management Studio.

Passo Método
Configurar distribuição Transact-SQL do SQL Server Management Studio |
Criar publicação Transact-SQL do SQL Server Management Studio |
Criar subscrição Transact-SQL do SQL Server Management Studio |

Algumas sugestões e diferenças de migração para a Base de Dados SQL

  • Utilize um distribuidor local
    • Isso causa um impacto no desempenho do servidor.
    • Se o impacto no desempenho for inaceitável, você poderá usar outro servidor, mas isso adicionará complexidade no gerenciamento e na administração.
  • Quando seleciona uma pasta de instantâneos, certifique-se de que a pasta que seleciona é suficientemente grande para conter um BCP de cada tabela que pretende replicar.
  • A criação de instantâneos bloqueia as tabelas associadas até que esteja concluída, portanto, agende o instantâneo adequadamente.
  • Apenas são suportadas subscrições push na Base de Dados SQL do Azure. Apenas pode adicionar subscritores da base de dados de origem.

Recomendações de migração

Para acelerar a migração para o Banco de Dados SQL do Azure, você deve considerar as seguintes recomendações:

Contenção de recursos Recomendação
Origem (normalmente no local) O principal gargalo durante a migração da origem é a E/S e a latência do arquivo de dados, que precisam ser monitoradas cuidadosamente. Com base na E/S e latência do arquivo de dados, e dependendo se é uma máquina virtual ou um servidor físico, talvez seja necessário envolver o administrador de armazenamento e explorar opções para reduzir o gargalo.
Destino (Banco de Dados SQL do Azure) O maior fator limitante é a taxa de geração de log e a latência no arquivo de log do banco de dados. Com o Banco de Dados SQL do Azure, você pode obter uma taxa máxima de geração de log de 96 MB/s. Para acelerar a migração, aumente a escala do banco de dados SQL do Azure de destino para Business Critical Gen5 8 vCore para obter a taxa máxima de geração de log de 96 MB/s, que também fornece baixa latência para arquivos de log. A camada de serviço Hyperscale fornece uma taxa de log de 100 MB/s, independentemente do nível de serviço escolhido.
Rede A largura de banda de rede necessária é igual à taxa máxima de ingestão de log 96 MB / s (768 Mb / s) Dependendo da conectividade de rede do seu centro de dados local para o Azure, verifique a largura de banda da rede (normalmente Azure ExpressRoute) para acomodar a taxa máxima de ingestão de logs.

Você também pode considerar essas recomendações para obter o melhor desempenho durante o processo de migração.

  • Escolha a camada de serviço mais alta e o tamanho de computação que seu orçamento permite para maximizar o desempenho de transferência. Pode reduzir verticalmente depois de a migração ser concluída para economizar.
  • Se você usar arquivos BACPAC, minimize a distância entre o arquivo BACPAC e o data center de destino.
  • Desative a atualização automática e crie estatísticas automaticamente durante a migração.
  • Particionar tabelas e índices.
  • Solte as visualizações indexadas e recrie-as assim que terminar.
  • Remova dados históricos raramente consultados para outro banco de dados e migre esses dados históricos para um banco de dados separado no Banco de Dados SQL do Azure. Em seguida, pode consultar este dados históricos com consultas elásticas.

Pós-migração

Depois de concluir com êxito o estágio de migração, passe pelas seguintes tarefas pós-migração para garantir que tudo esteja funcionando de forma suave e eficiente.

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

Atualização de estatísticas

Atualize as estatísticas com uma análise completa após a migração estar concluída.

Remediar aplicações

Depois que os dados são migrados para o ambiente de destino, todos os aplicativos que anteriormente consumiam a origem precisam começar a consumir o destino. Conseguir isso exigirá, em alguns casos, alterações nos aplicativos.

Realizar testes

A abordagem de teste para 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 serem executadas nos bancos de dados de origem e de destino. Suas 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 do banco de dados de destino. Certifique-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, em seguida, analise os resultados.
  4. Executar testes de desempenho: execute o teste de desempenho na origem e no destino e, em seguida, analise e compare os resultados.

Use recursos avançados

Certifique-se de aproveitar os recursos avançados baseados em nuvem oferecidos pelo Banco de dados SQL, como alta disponibilidade interna, deteção de ameaças e monitoramento e ajuste de sua carga de trabalho.

Alguns recursos do SQL Server só estão disponíveis quando o nível de compatibilidade do banco de dados é alterado para o nível de compatibilidade mais recente.

Para saber mais, consulte Gerenciando o Banco de Dados SQL do Azure após a migração.

Resolver problemas de compatibilidade de migração de banco de dados

Você pode encontrar uma grande variedade de problemas de compatibilidade, dependendo da versão do SQL Server no banco de dados de origem e da complexidade do banco de dados que você está migrando. As versões mais antigas do SQL Server têm mais problemas de compatibilidade. Utilize os seguintes recursos, para além de uma pesquisa na Internet direcionada com o seu motor de busca preferido:

Importante

A Instância Gerenciada do SQL do Azure permite migrar uma instância existente do SQL Server e seus bancos de dados com problemas de compatibilidade mínimos ou nulos. Consulte O que é a Instância Gerenciada SQL do Azure?

Próximos passos

Consulte Serviço e ferramentas para migração de dados para obter uma matriz dos serviços e ferramentas da Microsoft e de terceiros disponíveis para ajudá-lo com vários cenários de migração de banco de dados e dados, bem como tarefas especializadas.

Para saber mais sobre a extensão de migração SQL do Azure, consulte:

Para saber mais sobre o Azure Migrate , consulte:

Para saber mais sobre o Banco de dados SQL, consulte:

Para saber mais sobre a estrutura e o ciclo de adoção para migrações para a nuvem, consulte:

Para avaliar a camada de acesso ao aplicativo, consulte Kit de ferramentas de migração de acesso a dados (visualização)

Para obter detalhes sobre como executar testes de camada A/B de acesso a dados, consulte Assistente de experimentação de banco de dados.