Partilhar via


Visão geral da migração: SQL Server para o Banco de Dados SQL do Azure

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

Saiba mais sobre as opções e considerações para migrar seus bancos de dados do SQL Server para o Banco de Dados SQL do Azure.

Você pode migrar bancos de dados SQL Server existentes em execução em:

  • SQL Server em 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 outros guias de migração, consulte Guia de Migração de Banco de Dados.

Visão geral

O Banco de Dados SQL do Azure é uma opção de destino recomendada para cargas de trabalho do SQL Server que exigem uma plataforma como serviço (PaaS) totalmente gerida. O Banco de dados SQL lida com a maioria das funções de gerenciamento de banco de dados. Ele também tem alta disponibilidade integrada, processamento inteligente de consultas, escalabilidade e recursos de desempenho para atender a muitos tipos de aplicativos.

O Banco de dados SQL oferece flexibilidade com vários modelos de implantação e camadas de serviço que atendem a diferentes tipos de aplicativos ou cargas de trabalho.

Um dos principais benefícios da migração para o Banco de dados SQL é que você pode modernizar seu aplicativo usando os recursos de PaaS. Em seguida, você pode eliminar qualquer dependência de componentes técnicos que têm escopo no nível da instância, como trabalhos do SQL Agent.

Você também pode reduzir custos usando o Benefício Híbrido para SQL Server para migrar suas licenças no local do SQL Server para o Azure SQL Database. Essa opção estará disponível se você escolher o modelo de compra baseado em vCore .

Certifique-se de revisar os recursos do mecanismo de banco de dados do SQL Server disponíveis no Banco de Dados SQL do Azure, para validar a capacidade de suporte do seu destino de migração.

Considerações

Os principais fatores a serem considerados ao avaliar as opções de migração são:

  • Número de servidores e bases de dados
  • Tamanho dos bancos de dados
  • Tempo de inatividade comercial aceitável durante o processo de migração

As opções de migração listadas neste guia levam esses fatores em consideração. Para a migração de dados lógicos para o Banco de Dados SQL do Azure, o tempo para migrar pode depender do número de objetos em um banco de dados e do tamanho do banco de dados.

As ferramentas estão disponíveis para várias cargas de trabalho e preferências do usuário. Algumas ferramentas podem ser usadas para executar uma migração rápida de um único banco de dados por meio de uma ferramenta baseada em interface do usuário. Outras ferramentas podem automatizar a migração de vários bancos de dados para lidar com migrações em escala.

Escolha um alvo adequado

Considere as diretrizes gerais para ajudá-lo a escolher o modelo de implantação e a camada de serviço corretos do Banco de Dados SQL do Azure. Você pode escolher recursos de computação e armazenamento durante a implantação e, em seguida, alterá-los posteriormente usando o portal do Azure sem incorrer em tempo de inatividade para seu aplicativo.

Modelos de implantação: entenda a carga de trabalho do aplicativo e o padrão de uso para decidir entre um único banco de dados ou um pool elástico.

  • Um banco de dados individual representa um banco de dados totalmente gerido que é adequado para a maioria das aplicações e microsserviços de nuvem modernos.
  • Um pool elástico é uma coleção de bancos de dados únicos com um conjunto compartilhado de recursos, como CPU ou memória. É adequado para combinar bancos de dados em um pool com padrões de uso previsíveis que podem efetivamente compartilhar o mesmo conjunto de recursos.

Modelos de compra: Escolha entre o vCore, a unidade de transação de banco de dados (DTU) ou os modelos de compra sem servidor.

  • O modelo vCore permite escolher o número de vCores para o Banco de Dados SQL do Azure, portanto, é a escolha mais fácil quando você está traduzindo do SQL Server local. Esta é a única opção que suporta a redução de custos de licença com o Benefício Híbrido do Azure.
  • O modelo de compra baseado em DTU abstrai os recursos de computação, memória e E/S subjacentes para fornecer uma DTU combinada.
  • O modelo sem servidor é para cargas de trabalho que exigem dimensionamento automático sob demanda com recursos de computação cobrados por segundo de uso. A camada de computação sem servidor pausa automaticamente os bancos de dados durante períodos inativos (onde apenas o armazenamento é cobrado). Ele retoma automaticamente os bancos de dados quando a atividade retorna.

Camadas de serviço: Escolha entre três camadas de serviço projetadas para diferentes tipos de aplicativos.

  • O nível de serviço de Uso Geral/Padrão oferece uma opção equilibrada voltada para o orçamento, com computação e armazenamento adequados para fornecer aplicações nos níveis médio e inferior. A redundância é incorporada na camada de armazenamento para recuperação de falhas. Ele foi projetado para a maioria das cargas de trabalho de banco de dados.
  • de nível de serviço Business Critical/Premium destina-se a aplicativos de alto nível que exigem altas taxas de transação, E/S de baixa latência e um alto nível de resiliência. Réplicas secundárias estão disponíveis para mudança automática e para reduzir cargas de trabalho de leitura.
  • A camada de serviço do tipo Hyperscale é destinada a todos os clientes que necessitam de maior desempenho e disponibilidade, rápido backup e restauração, e/ou rápida escalabilidade de armazenamento e computação. Isso inclui clientes que estão migrando para a nuvem para modernizar seus aplicativos, bem como clientes que já estão usando outras camadas de serviço no Banco de Dados SQL do Azure. A camada de serviço Hyperscale suporta uma ampla gama de cargas de trabalho de banco de dados, de OLTP puro a análise pura. Ele é otimizado para OLTP e cargas de trabalho de transação híbrida e processamento analítico (HTAP).

Importante

taxa de log de transações é regida no Banco de Dados SQL do Azure para limitar altas taxas de ingestão. Como tal, durante a migração, talvez seja necessário dimensionar os recursos do banco de dados de destino (vCores ou DTUs) para aliviar a pressão sobre a CPU ou a taxa de transferência. Escolha o banco de dados de destino de tamanho apropriado, mas planeje aumentar a escala de recursos para a migração, se necessário.

Alternativa de VM do SQL Server

Sua empresa pode ter requisitos que tornam SQL Server em Máquinas Virtuais do Azure um destino mais adequado do que o Banco de Dados SQL do Azure.

Se uma das seguintes condições se aplicar à sua empresa, considere mudar para uma máquina virtual (VM) do SQL Server:

  • Você precisa de acesso direto ao sistema operacional ou sistema de arquivos, como instalar agentes personalizados ou de terceiros na mesma máquina virtual com o SQL Server.
  • Você tem dependência estrita de recursos que ainda não são suportados, como FileStream/FileTable, PolyBase e transações entre instâncias.
  • Você precisa permanecer em uma versão específica do SQL Server (2012, por exemplo).
  • Seus requisitos de computação são muito menores do que uma instância gerenciada oferece (um vCore, por exemplo), e a consolidação de banco de dados não é uma opção aceitável.

Ferramentas de migração

Recomendamos as seguintes ferramentas de migração:

Tecnologia Descrição
Azure Migrate Este serviço do Azure ajuda-o a descobrir e avaliar o seu património de dados SQL em escala no VMware. Ele fornece recomendações de implantação do SQL do Azure, dimensionamento de destino e estimativas mensais.
Extensão de Migração SQL do Azure para o Azure Data Studio Com tecnologia do do Serviço de Migração de Banco de Dados doAzure, a extensão de Migração SQL do Azure para o Azure Data Studio ajuda você a avaliar seus requisitos de banco de dados para entender sua prontidão de migração, obter as recomendações de SKU de tamanho certo para recursos do Azure e migrar seu banco de dados do SQL Server para o Azure. Você pode migrar bancos de dados únicos ou em escala usando o PowerShell e a CLI do Azure.

A tabela a seguir lista ferramentas de migração alternativas:

Tecnologia Descrição
Replicação transacional Replique dados de tabelas de banco de dados SQL Server de origem para o Banco de Dados SQL do Azure através de uma opção de migração do tipo editor-subscritor, mantendo a consistência transacional. As alterações incrementais de dados são propagadas para os assinantes à medida que ocorrem nos editores.
Serviço de Importação e Exportação/BACPAC BACPAC é um arquivo do Windows com uma extensão .bacpac que encapsula o esquema e os dados de um banco de dados. Você pode usar o BACPAC para exportar dados de uma fonte do SQL Server e importar os dados para o Banco de Dados SQL do Azure. Um arquivo BACPAC pode ser importado para um novo banco de dados SQL por meio do portal do Azure.

Para otimizar o desempenho com grandes dimensões de bancos de dados ou um grande número de bancos de dados, considere usar a ferramenta de linha de comando SqlPackage para exportar e importar bancos de dados.
Cópia em massa A ferramenta programa de cópia em massa (bcp) copia dados de uma instância do SQL Server em um arquivo de dados. Use a ferramenta para exportar os dados da sua origem e importar o arquivo de dados para o banco de dados SQL de destino.

Para operações de cópia em massa de alta velocidade para mover dados para o Banco de Dados SQL do Azure, você pode usar a ferramenta Smart Bulk Copy para maximizar a velocidade de transferência aproveitando as tarefas de cópia paralela.
Azure Data Factory A atividade de cópia no Azure Data Factory migra dados de bancos de dados SQL Server de origem para o Banco de Dados SQL do Azure usando conectores internos e um runtime de integração .

O Data Factory dá suporte a uma ampla variedade de conectores para mover dados de fontes do SQL Server para o Banco de Dados SQL do Azure.

Comparar opções de migração

Compare as opções de migração para escolher o caminho adequado às necessidades da sua empresa.

A tabela a seguir compara as opções de migração recomendadas:

Opção de migração Quando utilizar Considerações
Azure Migrate - Descoberta e avaliação de bancos de dados únicos ou em escala a partir de diferentes ambientes. - Todas as etapas de pré-migração, como deteção, avaliações e dimensionamento correto de recursos locais, estão incluídas para infraestrutura, dados e aplicativos.
extensão de migração SQL do Azure para o Azure Data Studio - Migrar bases de dados únicas ou em escala.
- Apenas no modo offline.

Fontes suportadas:
- SQL Server (2008 em diante) no local ou em Máquinas Virtuais do Azure
- SQL Server no Amazon EC2
- Amazon RDS para SQL Server
- SQL Server no Google Compute Engine
- As migrações em escala podem ser automatizadas por meio do PowerShell ou da CLI do Azure.
- O tempo para concluir a migração depende do tamanho do banco de dados e do número de objetos no banco de dados.
- O Azure Data Studio é necessário quando você não está usando o PowerShell ou a CLI do Azure.

A tabela a seguir compara as opções alternativas de migração:

Método ou tecnologia Quando utilizar Considerações
Replicação transacional - Migrar publicando continuamente alterações de tabelas de banco de dados de origem para tabelas de banco de dados SQL de destino.
- Fazer migrações completas ou parciais de banco de dados de tabelas selecionadas (subconjunto de um banco de dados).

Fontes suportadas:
- SQL Server (2016 a 2019) com algumas limitações
- AWS EC2
- GCP Compute SQL Server VM
- A configuração é relativamente complexa em comparação com outras opções de migração.
- Fornece uma opção de replicação contínua para migrar dados (sem colocar os bancos de dados offline).
- A replicação transacional tem limitações a serem consideradas quando você estiver configurando o editor na instância do SQL Server de origem. Consulte Limitações na publicação de objetos para saber mais.
- É possível monitorizar a atividade de replicação.
Serviço de Importação e Exportação/BACPAC - Migrar bancos de dados individuais de aplicativos de linha de negócios.
- Adequado para bases de dados mais pequenas.
- Não requer um serviço ou ferramenta de migração separada.

Fontes suportadas:
- SQL Server (2005 a 2019) local ou Azure VM
- AWS EC2
- AWS RDS
- GCP Compute SQL Server VM
- Requer tempo de inatividade porque os dados precisam ser exportados na origem e importados no destino.
- Os formatos de arquivo e tipos de dados usados na exportação ou importação precisam ser consistentes com esquemas de tabela para evitar truncamento ou erros de incompatibilidade de tipo de dados.
- O tempo necessário para exportar um banco de dados com um grande número de objetos pode ser significativamente maior.
Cópia em massa - Fazer migrações de dados totais ou parciais.
- Pode acomodar períodos de inatividade.

Fontes suportadas:
- SQL Server (2005 a 2019) local ou Azure VM
- AWS EC2
- AWS RDS
- GCP Compute SQL Server VM
- Requer tempo de inatividade para exportar dados da origem e importar para o destino.
- Os formatos de arquivo e tipos de dados usados na exportação ou importação precisam ser consistentes com os esquemas de tabela.
Azure Data Factory - Migrar e/ou transformar dados de bancos de dados SQL Server de origem.
- Mesclar dados de várias fontes de dados para o Banco de Dados SQL do Azure normalmente é para cargas de trabalho de business intelligence (BI).
- Requer a criação de pipelines de movimentação de dados no Data Factory para mover dados da origem para o destino.
- de custo é uma consideração importante e é baseada em fatores como gatilhos de pipeline, execuções de atividade e duração da movimentação de dados.

Interoperabilidade de funcionalidades

Há mais considerações quando você está migrando cargas de trabalho que dependem de outros recursos do SQL Server.

Serviços de integração do SQL Server

Migre os pacotes do SQL Server Integration Services (SSIS) para o Azure ao reimplantar esses pacotes no runtime Azure-SSIS no Azure Data Factory . O Azure Data Factory dá suporte à migração de pacotes SSIS fornecendo um tempo de execução criado para executar pacotes SSIS no Azure. Como alternativa, você pode reescrever a lógica ETL (extrair, transformar, carregar) do SSIS nativamente no Azure Data Factory usando fluxos de dados.

SQL Server Reporting Services

Migre relatórios do SQL Server Reporting Services (SSRS) para relatórios paginados no Power BI. Use a Ferramenta de Migração RDL para ajudar a preparar e migrar os seus relatórios. A Microsoft desenvolveu essa ferramenta para ajudar os clientes a migrar relatórios RDL (Report Definition Language) de seus servidores SSRS para o Power BI. Ele está disponível no GitHub e documenta um passo a passo completo do cenário de migração.

Alta disponibilidade

A configuração manual de recursos de alta disponibilidade do SQL Server, como instâncias de cluster de failover Always On e grupos de disponibilidade Always On, torna-se obsoleta no banco de dados SQL de destino. A arquitetura de alta disponibilidade já está incorporada nas camadas de serviço de uso geral (modelo de disponibilidade padrão) e Business Critical (modelo de disponibilidade premium) para o Banco de Dados SQL do Azure. A camada de serviço Business Critical/Premium também fornece escalabilidade de leitura que permite a conexão a um dos nós secundários para operações de leitura apenas.

Além da arquitetura de alta disponibilidade incluída no Banco de Dados SQL do Azure, o recurso grupos de failover de permite gerenciar a replicação e o failover de bancos de dados para um servidor em outra região.

Logins e grupos

Os logons do Windows não são suportados no Banco de Dados SQL do Azure, crie um logon a partir da ID do Microsoft Entra (anteriormente Azure Ative Directory) em vez disso. Recrie manualmente todos os logins SQL.

Trabalhos do SQL Agent

Os trabalhos do SQL Agent não têm suporte direto no Banco de Dados SQL do Azure. Em vez disso, use trabalhos elásticos.

Bases de dados do sistema

Para o Banco de Dados SQL do Azure, os únicos bancos de dados do sistema aplicáveis são master e tempdb. Para saber mais, consulte tempdb no Banco de Dados SQL do Azure.

Funcionalidades avançadas

Certifique-se de aproveitar os recursos avançados baseados em nuvem no Banco de dados SQL. Por exemplo, você não precisa se preocupar com o gerenciamento de backups porque o serviço faz isso por você. Você pode restaurar para qualquer ponto no tempo dentro do período de retenção.

Para reforçar a segurança, considere usar de autenticação do Microsoft Entra, de auditoria, de deteção de ameaças, de segurança em nível de linha e de mascaramento dinâmico de dados.

Além de recursos avançados de gerenciamento e segurança, o Banco de dados SQL fornece ferramentas que podem ajudá-lo monitorar e ajustar sua carga de trabalho. do Azure SQL Analytics (Versão Prévia) é uma solução avançada para monitorizar o desempenho de todas as suas bases de dados no Azure SQL Database em escala e em várias subscrições numa única visão. O Azure SQL Analytics coleta e visualiza as principais métricas de desempenho com inteligência interna para solução de problemas de desempenho.

Ajuste automático monitora continuamente o desempenho do plano de execução SQL e corrige automaticamente os problemas de desempenho identificados.

Ativos de migração

Para obter mais assistência, consulte os seguintes recursos que foram desenvolvidos para projetos de migração do mundo real.

Ativo Descrição
Modelo e ferramenta de avaliação da carga de trabalho de dados Esta ferramenta fornece plataformas de destino sugeridas que melhor se ajustam, preparação para a cloud e um nível de remediação de aplicações/bases de dados para uma carga de trabalho. Ele oferece cálculo simples com um clique e geração de relatórios que ajudam a acelerar avaliações de grandes propriedades, fornecendo um processo de decisão automatizado e uniforme para plataformas de destino.
Criação de banco de dados em massa com o PowerShell Você pode usar um conjunto de três scripts do PowerShell que criam um grupo de recursos (create_rg.ps1), o servidor lógico no Azure (create_sqlserver.ps1) e um banco de dados SQL (create_sqldb.ps1). Os scripts incluem recursos de loop para que você possa iterar e criar quantos servidores e bancos de dados forem necessários.
Implantação de esquema em massa com MSSQL-Scripter e PowerShell Esse ativo cria um grupo de recursos, cria um ou vários servidores lógicos no Azure para hospedar o Banco de Dados SQL do Azure, exporta cada esquema de uma instância local do SQL Server (ou várias instâncias do SQL Server 2005+) e importa os esquemas para o Banco de Dados SQL do Azure.
Converter trabalhos do SQL Server Agent em trabalhos de banco de dados elástico Esse script migra seus trabalhos de origem do SQL Server Agent para trabalhos de banco de dados elástico.
Utilitário para mover logons locais do SQL Server para o Banco de Dados SQL do Azure Um script do PowerShell pode criar um script de comando T-SQL para recriar logons e selecionar usuários de banco de dados do SQL Server local para o Banco de Dados SQL do Azure. A ferramenta permite o mapeamento automático de contas do Ative Directory do Windows Server para contas do Microsoft Entra, além de migrar opcionalmente logons nativos do SQL Server.
a automação da coleta de dados Perfmon usando o Logman Você pode usar a ferramenta Logman para coletar dados Perfmon (para ajudá-lo a entender o desempenho da linha de base) e obter recomendações de destino de migração. Essa ferramenta usa logman.exe para criar o comando que criará, iniciará, interromperá e excluirá contadores de desempenho definidos em uma instância remota do SQL Server.

A equipe de Engenharia de Dados SQL desenvolveu esses recursos. A carta principal desta equipe é desbloquear e acelerar a modernização complexa para projetos de migração de plataforma de dados para a plataforma de dados Azure da Microsoft.