Guia de migração: SQL Server para SQL Server em Máquinas Virtuais do Azure
Aplica-se a:SQL Server na VM do Azure
Neste guia, você aprende a descobrir, avaliare migrar seus bancos de dados de usuário do SQL Server para uma instância do SQL Server em máquinas virtuais do Azure com ferramentas e técnicas de acordo com seus requisitos.
Você pode migrar o SQL Server em execução no local ou em:
- SQL Server em Máquinas Virtuais (VMs).
- Amazon Web Services (AWS) EC2.
- Serviço de banco de dados relacional do Amazon (AWS RDS).
- Compute Engine (Google Cloud Platform [GCP]).
Para obter informações sobre estratégias de migração extra, consulte a Visão geral da migração de VM do SQL Server. Para obter outros guias de migração, confira Guias de migração do Banco de Dados do Azure.
Pré-requisitos
Migrar para o SQL Server em máquinas virtuais do Azure requer os seguintes recursos:
- Extensão de migração do SQL do Azure para Azure Data Studio.
- Um projeto de Migrações para Azure (necessário apenas para descoberta de SQL Server em seu estado de dados).
- Um SQL Server de destino preparado na instância de Máquinas Virtuais do Azure que é a mesma versão ou superior à origem do SQL Server.
- Conectividade entre Azure e local.
- Escolhendo uma estratégia de migração apropriada.
Pré-migração
Antes de começar a migração, você precisa descobrir a topologia do seu ambiente SQL e avaliar a viabilidade da sua migração pretendida.
Descobrir
As Migrações para Azure avaliam a adequação da migração de máquinas locais, realiza o dimensionamento com base no desempenho e fornece estimativas de custo para a execução no local. Para planejar a migração, use as Migrações para Azure para identificar as fontes de dados existentes e os detalhes sobre os recursos que suas instâncias de SQL Server usam. Esse processo envolve a verificação da rede para identificar todas as instâncias do SQL Server da sua organização junto com a versão e os recursos em uso.
Importante
Ao escolher uma máquina virtual de destino do Azure para sua instância de SQL Server, considere as diretrizes de desempenho para SQL Server em máquinas virtuais do Azure.
Para obter mais ferramentas de descoberta, consulte os Serviços e as ferramentas disponíveis para cenários de migração de dados.
Avaliar
Ao migrar de SQL Server local para SQL Server em Máquinas Virtuais do Azure, é improvável que você tenha problemas de compatibilidade ou paridade de recursos se as versões de origem e destino do SQL Server forem iguais. Se você não estiver atualizando a versão do SQL Server, ignore esta etapa e vá para a seção Migrar.
Antes da migração, ainda é uma boa prática executar uma avaliação dos bancos de dados do SQL Server para identificar bloqueadores de migração (caso haja) e a extensão de migração de SQL do Azure para Azure Data Studio faz isso antes da migração.
Observação
Se você estiver avaliando todo o conjunto de dados do SQL Server em escala no VMware, use o Migrações para Azure para obter recomendações de implantação do SQL do Azure, dimensionamento de destino e estimativas mensais.
Avaliar bancos de dados de usuário
A extensão de migração de SQL do Azure para Azure Data Studio fornece uma experiência perfeita baseada em assistente para avaliar, obter recomendações do Azure e migrar o banco de dados do SQL Server local para o SQL Server em Máquinas Virtuais do Azure. Além disso, destacando quaisquer bloqueadores de migração ou avisos, a extensão também inclui uma opção de recomendações do Azure para coletar dados de desempenho dos bancos de dados para recomendar um SQL Server em Máquinas Virtuais do Azure de tamanho correto para atender às necessidades de desempenho da carga de trabalho (com o menor preço).
Para saber mais sobre recomendações do Azure, confira Obter recomendação do Azure de tamanho correto para seus bancos de dados locais do SQL Server.
Importante
Para avaliar bancos de dados usando a extensão de migração de SQL do Azure, verifique se os logons usados para conectar o SQL Server de origem são membros da função de servidor sysadmin ou têm permissão CONTROL SERVER.
Para uma atualização de versão, use Assistente de Migração de Dados para avaliar instâncias SQL Server locais se você estiver atualizando para uma instância de SQL Server em Máquinas Virtuais do Azure com uma versão superior para entender as lacunas entre as versões de origem e de destino.
Avaliar os aplicativos
Normalmente, uma camada de aplicativo acessa os bancos de dados de usuário para persistir e modificar os dados. O Assistente de Migração de Dados pode avaliar a camada de acesso a dados de um aplicativo de duas maneiras:
- Usando eventos estendidos capturados ou rastreamento do SQL Server Profiler de seus bancos de dados de usuário. Você também pode usar o Assistente para Experimentos de Banco de Dados para criar um log de rastreamento que também pode ser usado para testes A/B.
- Usando o Data Access Migration Toolkit (versão prévia), que fornece descoberta e avaliação de consultas SQL dentro do código e é usado para migrar o código-fonte de uma plataforma de banco de dados para outra. Essa ferramenta oferece suporte a tipos de arquivo populares, como C#, Java, XML e texto sem formatação. Para obter um guia sobre como executar uma avaliação do Data Access Migration Toolkit, consulte a postagem do blog Usar assistente de migração de dados.
Durante a avaliação de bancos de dados de usuário, use Assistente de Migração de Dados para importar arquivos de rastreamento capturados ou arquivos do Data Access Migration Toolkit.
Avaliações em escala
Se você tiver vários servidores que exijam avaliação de preparação do Azure, você poderá automatizar o processo usando scripts com uma das opções a seguir. Para saber mais sobre como usar scripts, consulte Migrar bancos de dados em escala usando a automação.
- Módulo do PowerShell do Az.DataMigration
- extensão da CLI do az datamigration
- interface de linha de comando do Assistente de Migração de Dados
Para relatórios de resumo em grandes imóveis, as avaliações de Assistente de Migração de Dados também podem ser consolidadas para Migrações para Azure.
Atualizar bancos de dados com Assistente de Migração de Dados
Para o cenário de atualização, você pode ter uma série de recomendações para garantir que seus bancos de dados de usuário executem e funcionem corretamente após a atualização. O Assistente de Migração de Dados fornece detalhes sobre os objetos e os recursos afetados para resolver cada problema. Certifique-se de resolver todas as alterações significativas e alterações de comportamento antes de iniciar a atualização de produção.
Para recursos preteridos, você pode optar por executar seus bancos de dados de usuário em seu modo de compatibilidade original se quiser evitar fazer essas alterações e acelerar a migração. Essa ação impedirá a atualização da compatibilidade do banco de dados até que os itens preteridos tenham sido resolvidos.
Cuidado
Nem todas as versões do SQL Server dão suporte a todos os modos de compatibilidade. Verifique se a versão de SQL Server de destino dá suporte à compatibilidade de banco de dados escolhida. Por exemplo, SQL Server 2019 não dá suporte a bancos de dados com compatibilidade de nível 90 (que é SQL Server 2005). Esses bancos de dados exigirão, pelo menos, uma atualização para o nível de compatibilidade 100.
Migrações
Depois de concluir as etapas de pré-migração, você estará pronto para migrar os bancos de dados e componentes do usuário. Migre seus bancos de dados usando seu método de migração preferencial.
As seguintes seções fornecem opções para executar uma migração em ordem de preferência:
- migrar usando a extensão de migração do SQL do Azure para o Azure Data Studio com tempo de inatividade mínimo
- backup e restauração
- desanexar e anexar usando uma URL
- converter em uma VM, carregar em uma URL e implantar como uma nova VM
- envio de logs
- enviar um disco rígido
- migrar objetos fora dos bancos de dados de usuário
Migrar usando a extensão de migração de SQL do Azure para o Azure Data Studio (tempo de inatividade mínimo)
Para executar uma migração com tempo de inatividade mínimo usando Azure Data Studio, siga as etapas de alto nível abaixo. Para um tutorial em detalhes passo a passo, consulte Migrar de SQL Server para SQL Server na Máquina Virtual do Azure online usando o Azure Data Studio:
- Baixe e instale o Azure Data Studio e a extensão de migração de SQL do Azure.
- Iniciar o assistente Migrar para o SQL do Azure na extensão do Azure Data Studio.
- Selecione bancos de dados para avaliação e exiba a preparação ou problemas de migração (se houver). Além disso, colete dados de desempenho e obtenha a recomendação de tamanho correto do Azure.
- Selecione sua conta do Azure e sua SQL Server de destino no Azure Machine em sua assinatura.
- Selecione o local dos backups de banco de dados. Os backups de banco de dados podem estar localizados em um compartilhamento de rede local ou em um contêiner de Armazenamento de Blobs do Azure.
- Crie um novo Serviço de Migração de Banco de Dados do Azure usando o assistente no Azure Data Studio. Se você já criou um Serviço de Migração de Banco de Dados do Azure usando o Azure Data Studio, poderá reutilizá-lo se desejar.
- Opcional: se os backups estiverem em um compartilhamento de rede local, baixe e instale o runtime de integração auto-hospedada em um computador que possa se conectar ao SQL Server de origem e o local que contém os arquivos de backup.
- Inicie a migração de 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.
- Conclua a substituição.
- Interromper todas as transações de entrada para o banco de dados de origem.
- Faça alterações na configuração do aplicativo para apontar para o banco de dados de destino no SQL Server na máquina Virtual do Azure.
- Faça backups de log da parte final do banco de dados de origem no local de backup especificado.
- Verifique se todos os backups de banco de dados têm o status Restaurado na página de detalhes de monitoramento.
- Selecione Transição completa na página detalhes de monitoramento.
Backup e restauração
Para executar uma migração padrão usando backup e restauração:
- Configure a conectividade com SQL Server em máquinas virtuais do Azure com base em seus requisitos. Para obter mais informações, confira Conectar-se a uma Máquina Virtual do SQL Server no Azure (Gerenciador de Recursos).
- Pause ou pare qualquer aplicativo que esteja usando bancos de dados destinados à migração.
- Verifique se os bancos de dados de usuário estão inativos usando o modo de usuário único.
- Execute um backup de banco de dados completo para um caminho local.
- Copie seus arquivos de backup locais para sua VM usando um desktop remoto, o Azure Data Explorerou o Utilitário de linha de comando AzCopy. (Recomenda-se mais de 2 TB de backups).
- Restaure backups completos de banco de dados para o SQL Server em máquinas virtuais do Azure.
Desanexar e anexar de uma URL
Desanexar os banco de dados e arquivos de log e transferi-los para Armazenamento de Blobs do Azure. Em seguida, anexe o banco de dados da URL na sua VM do Azure. Use esse método se desejar que os arquivos de banco de dados físicos residam no armazenamento de Blobs, o que pode ser útil para bancos de dados muito grandes. Use as seguintes etapas gerais para migrar um banco de dados do usuário usando este método manual:
- Desanexe os arquivos de banco de dados da instância de banco de dados local.
- Copie os arquivos desanexados do banco de dados no Armazenamento de Blobs do Azure usando o utilitário de linha de comando AZCopy.
- Anexe os arquivos de banco de dados da URL do Azure para a instância do SQL Server na VM do Azure.
Converter para uma VM, carregar em uma URL e implantar como uma nova VM
Use esse método para migrar todos os sistemas e bancos de dados de usuário em uma instância local do SQL Server para uma máquina virtual do Azure. Use as seguintes etapas gerais para migrar de uma instância inteira do SQL Server usando este método manual:
- Converta máquinas físicas ou virtuais em VHDs do Hyper-V.
- Carregue arquivos de VHD no armazenamento do Azure usando o cmdlet Add-AzureVHD.
- Implante uma nova máquina virtual usando o VHD carregado.
Observação
Para migrar um aplicativo inteiro, use o Azure Site Recovery.
Envio de logs
O envio de logs replica os arquivos de log transacionais do local para uma instância do SQL Server em uma VM do Azure. Essa opção oferece o mínimo de tempo de inatividade durante o failover e tem menos sobrecarga de configuração do que configurar um grupo de disponibilidade Always On.
Para obter mais informações, confira Tabelas de envio de logs e procedimentos armazenados.
Enviar uma unidade de disco rígido
Use o método do Serviço de Importação/Exportação do Windows para transferir grandes quantidades de dados de arquivo para o armazenamento de Blob do Azure em situações em que o carregamento pela rede seja extremamente caro ou inviável. Com esse serviço, você envia um ou mais unidades de disco rígido contendo esses dados para um data center do Azure, em que os dados serão carregados na sua conta de armazenamento.
Migre objetos fora dos bancos de dados de usuário
Mais objetos SQL Server podem ser necessários para a operação direta dos bancos de dados de usuário após a migração.
A tabela a seguir fornece uma lista de componentes e métodos de migração recomendados que podem ser concluídos antes ou após a migração dos bancos de dados de usuário.
Recurso | Componente | Métodos de migração |
---|---|---|
Bancos de dados | Modelar | Verifique com o SQL Server Management Studio. |
O banco de dados tempdb |
Planeje mover tempdb para o disco temporário da VM do Azure (SSD) a fim de obter o melhor desempenho. Escolha um tamanho de VM que tenha um SSD local suficiente para acomodar o tempdb . |
|
Bancos de dados de usuário com FileStream | Use os métodos de backup e restauração para a migração. O Assistente de Migração de Dados não dá suporte a bancos de dados com FileStream. | |
Segurança | Logons do SQL Server e do Windows | Use Assistente de Migração de Dados para migrar logons de usuário. |
Funções do SQL Server | Verifique com o SQL Server Management Studio. | |
Provedores criptográficos | Recomenda-se converter para usar Azure Key Vault. Este procedimento usa o provedor de recursos de VM do SQL. | |
Objetos do servidor | Dispositivos de backup | Substitua pelo backup de banco de dados usando o backup do Azureou grave backups no armazenamento do Azure (SQL Server 2012 SP1 Cu2 +). Este procedimento usa o provedor de recursos de VM do SQL. |
Servidores vinculados | Verifique com o SQL Server Management Studio. | |
Gatilhos de Servidor | Verifique com o SQL Server Management Studio. | |
Replicação | Publicações locais | Verifique com o SQL Server Management Studio. |
Assinantes locais | Verifique com o SQL Server Management Studio. | |
PolyBase | PolyBase | Verifique com o SQL Server Management Studio. |
Gerenciamento | Database Mail | Verifique com o SQL Server Management Studio. |
SQL Server Agent | Trabalhos | Verifique com o SQL Server Management Studio. |
Alertas | Verifique com o SQL Server Management Studio. | |
Operadores | Verifique com o SQL Server Management Studio. | |
Proxies | Verifique com o SQL Server Management Studio. | |
Sistema operacional | Arquivos, compartilhamentos de arquivos | Anote quaisquer outros arquivos ou compartilhamentos de arquivos usados pelos servidores SQL e replique-os no destino de máquinas virtuais do Azure. |
Pós-migração
Depois de concluir com êxito a fase de migração, você precisará 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 que os dados são migrados para o ambiente de destino, todos os aplicativos que antes consumiam a origem, precisam começar a consumir o destino. Em alguns casos, a realização dessa tarefa exige alterações nos aplicativos.
Aplique as correções recomendadas pelo Assistente de Migração de Dados aos bancos de dados de usuário. Você precisa gerar o script dessas correções para garantir a consistência e permitir a automação.
Executar testes
A abordagem de teste para a migração de banco de dados consiste nas seguintes atividades:
- Desenvolver testes de validação: para testar a migração do banco de dados, é necessário usar consultas SQL. Crie consultas de validação para execução nos bancos de dados de origem e de destino. As consultas de validação devem abranger o escopo que você definiu.
- 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.
- Executar testes de validação: execute os testes de validação na origem e no destino e analise os resultados subsequentes.
- Executar testes de desempenho: execute testes de desempenho na origem e no destino, analise e compare os resultados.
Dica
Use o Assistente para experimentos de banco de dados para ajudá-lo a avaliar o desempenho do SQL Server de destino.
Otimizar
A fase pós-migração é crucial para reconciliar eventuais problemas com a precisão de dados, verificar a integridade e abordar problemas de desempenho com a carga de trabalho.
Para obter mais informações sobre esses problemas e as etapas para mitigá-los, consulte:
- Validação após a migração e guia de otimização
- Ajustando o desempenho em máquinas virtuais do Azure SQL
- Centro de otimização de custos do Azure
Próximas etapas
Para verificar a disponibilidade dos serviços aplicáveis ao SQL Server, confira o Centro de infraestrutura global do Azure.
Para obter uma matriz de serviços e ferramentas de terceiros e da Microsoft disponíveis para ajudar você com tarefas especiais e vários cenários de banco de dados e migração de dados, confira Serviços e ferramentas de migração de dados.
Para saber mais sobre o SQL do Azure, confira:
- Opções de implantação
- SQL Server em Máquinas Virtuais do Azure
- Calculadora de TCO (custo total de propriedade) do Azure
Para saber mais sobre a estrutura e o ciclo de adoção para migrações na nuvem, confira:
- Cloud Adoption Framework para Azure
- Práticas recomendadas para estimar os custos e dimensionar as cargas de trabalho para migração para o Azure
Para obter informações sobre licenciamento, confira:
- Traga a própria licença com o Benefício Híbrido do Azure
- Obter suporte estendido gratuito para o SQL Server
Para avaliar a camada de acesso do aplicativo, confira Data Access Migration Toolkit (versão prévia).
Para obter informações sobre como executar testes de Camada de acesso a dados A/B, confira Visão geral do Assistente para Experimentos de Banco de Dados.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de