Compartilhar via


Tutorial: migrar o SQL Server para o Banco de Dados SQL do Azure (offline)

Use o Serviço de Migração de Banco de Dados do Azure por meio da extensão de Migração do SQL do Azure no Azure Data Studio ou do portal do Azure, para migrar bancos de dados de uma instância local do SQL Server para o Banco de Dados SQL do Azure (offline).

Neste tutorial, saiba como migrar o banco de dados de amostra AdventureWorks2022 de uma instância local do SQL Server para uma instância do Banco de Dados SQL do Azure usando o Serviço de Migração de Banco de Dados. Este tutorial usa o modo de migração offline, que considera um tempo de inatividade aceitável durante o processo de migração.

Neste tutorial, você aprenderá como:

  • Abrir o assistente Migrar para o SQL do Azure no Azure Data Studio
  • Executar uma avaliação de seus bancos de dados do SQL Server de origem
  • Coletar dados de desempenho de sua instância do SQL Server de origem
  • Obter uma recomendação do SKU do Banco de Dados SQL do Azure que funcionará melhor com sua carga de trabalho
  • Criar uma instância do Serviço de Migração de Banco de Dados do Azure
  • Iniciar a migração e monitorar o progresso até a conclusão

Dica

No Serviço de Migração de Banco de Dados do Azure, você pode migrar seus bancos de dados offline ou enquanto estiverem online. Na migração offline, o tempo de inatividade do aplicativo começa quando a migração é iniciada. Para limitar o tempo de inatividade que leva para transferir para o novo ambiente após a migração, use uma migração online. É recomendável testar uma migração offline para determinar se o tempo de inatividade é aceitável. Se o tempo de inatividade esperado não for aceitável, faça uma migração online.

Importante

Atualmente, as migrações online para os destinos do Banco de Dados SQL do Azure não estão disponíveis.

Opções de migração

A seção a seguir descreve como usar o Serviço de Migração de Banco de Dados do Azure com a extensão de Migração do SQL do Azure ou no portal do Azure.

Pré-requisitos

Antes de começar o tutorial:

  • Baixe e instale o Azure Data Studio.

  • Instale a extensão de Migração do SQL do Azure do Marketplace do Azure Data Studio.

  • Tenha uma conta do Azure atribuída a uma das seguintes funções internas:

    • Colaborador para a instância do Banco de Dados SQL do Azure de destino
    • Função de Leitor para o grupo de recursos do Azure que contém a instância de destino do Banco de Dados SQL do Azure
    • Função de Proprietário ou Colaborador para a assinatura do Azure (necessária se você criar uma instância do Serviço de Migração de Banco de Dados do Azure)

    Como alternativa ao uso de uma dessas funções internas, você pode atribuir uma função personalizada.

    Importante

    Uma conta do Azure é necessária somente quando você configura as etapas de migração. Uma conta do Azure não é necessária para a avaliação nem para exibir recomendações do Azure no assistente de migração no Azure Data Studio.

  • Crie uma instância de destino do Banco de Dados SQL do Azure.

  • Verifique se o logon do SQL Server que se conecta à instância do SQL Server de origem é um membro da função db_datareader e se o logon da instância do SQL Server de destino é um membro da função db_owner.

  • Para migrar o esquema de banco de dados da origem para o Banco de Dados SQL do Azure de destino usando o Serviço de Migração de Banco de Dados, a versão do SHIR mínima necessária e com suporte é a 5.37 ou superior.

  • Caso esteja usando o Serviço de Migração de Banco de Dados pela primeira vez, verifique se o provedor de recursos Microsoft.DataMigration está registrado em sua assinatura.

Observação

Agora, você pode migrar o esquema do banco de dados e os dados usando o Serviço de Migração de Banco de Dados. Além, disso, você pode usar ferramentas como a extensão dacpac do SQL Server ou a extensão Projetos de Banco de Dados SQL no Azure Data Studio para migrar o esquema antes de selecionar a lista das tabelas a serem migradas.

Quando não há tabelas no destino do Banco de Dados SQL do Azure ou nenhuma tabela é selecionada antes de iniciar a migração, o botão Avançar não fica disponível para iniciar a tarefa de migração. Quando não existe nenhuma tabela no destino, você deve selecionar a opção Migração de esquema para avançar.

Abrir o assistente Migrar para o SQL do Azure no Azure Data Studio

Para abrir o assistente Migrar para o SQL do Azure:

  1. No Azure Data Studio, acesse Conexões. Selecione a instância local do SQL Server e conecte-se a ela. Você também pode se conectar ao SQL Server em uma máquina virtual do Azure.

  2. Clique com o botão direito do mouse na conexão de servidor e selecione Gerenciar.

    Captura de tela que mostra uma conexão de servidor e a opção Gerenciar no Azure Data Studio.

  3. No menu do servidor, em Geral, selecione Migração de SQL do Azure.

    Captura de tela que mostra o menu do servidor do Azure Data Studio.

  4. No painel da Migração de SQL do Azure, selecione Migrar para o SQL do Azure para abrir o assistente de migração.

    Captura de tela que mostra o assistente Migrar para o SQL do Azure.

  5. Na primeira página do assistente, inicie uma nova sessão ou retome uma sessão salva anteriormente.

Executar a avaliação de banco de dados, coletar dados de desempenho e obter recomendações do Azure

  1. Na Etapa 1: Bancos de dados para avaliação no assistente Migrar para o SQL do Azure, selecione os bancos de dados que deseja avaliar. Em seguida, selecione Avançar.

    Captura de tela que mostra a seleção de um banco de dados para avaliação.

  2. Na Etapa 2: Resultados e recomendações da avaliação, conclua as seguintes etapas:

    1. Em Escolher o destino do SQL do Azure, selecione Banco de Dados SQL do Azure.

      Captura de tela que mostra a seleção do destino do Banco de Dados SQL do Azure.

    2. Selecione Exibir/Selecionar para exibir os resultados da avaliação.

      Captura de tela que mostra como exibir/selecionar os resultados da avaliação.

    3. Nos resultados da avaliação, selecione o banco de dados e examine o relatório da avaliação para garantir que nenhum problema tenha sido encontrado.

      Captura de tela que mostra um relatório da avaliação.

    4. Selecione Obter recomendação do Azure para abrir o painel de recomendações.

      Captura de tela que mostra as recomendações do Azure.

    5. Selecione Coletar dados de desempenho agora. Selecione uma pasta no computador local para armazenar os logs de desempenho e selecione Iniciar.

      Captura de tela que mostra a coleta de dados de desempenho.

      O Azure Data Studio coleta dados de desempenho até que você interrompa a coleta de dados ou feche o Azure Data Studio.

      Após 10 minutos, o Azure Data Studio indica que uma recomendação está disponível para o Banco de Dados SQL do Azure. Após a primeira recomendação ser gerada, você poderá selecionar Reiniciar coleta de dados para continuar o processo de coleta de dados e refinar a recomendação de SKU. Uma avaliação estendida será especialmente útil se os padrões de uso variarem ao longo do tempo.

      Captura de tela que mostra os dados de desempenho coletados.

    6. No destino Banco de Dados SQL do Azure selecionado, clique em Ver detalhes para abrir o relatório detalhado de recomendação de SKU:

      Captura de tela que mostra o link Exibir detalhes para as recomendações do banco de dados de destino.

    7. Em Revisar Recomendações Banco de Dados SQL do Azure, examine a recomendação. Para salvar uma cópia da recomendação, selecione Salvar relatório de recomendação.

      Captura de tela que mostra os detalhes da recomendação de SKU.

  3. Selecione Fechar para fechar o painel de recomendações.

  4. Selecione Avançar para dar continuidade à migração de banco de dados no assistente.

Definir as configurações de migração

  1. Na Etapa 3: destino de SQL do Azure no assistente Migrar para o SQL do Azure, conclua estas etapas para sua instância do Banco de Dados SQL do Azure de destino:

    1. Selecione sua conta do Azure, a assinatura do Azure, a região ou o local do Azure e o grupo de recursos que contém a implantação do Banco de Dados SQL do Azure.

      Captura de tela que mostra os detalhes da conta do Azure.

    2. Para Servidor do Banco de Dados SQL do Azure, selecione o servidor de banco de dados de SQL do Azure de destino (servidor lógico). Insira um nome de usuário e uma senha para a implantação do banco de dados de destino. Em seguida, selecione Conectar. Insira as credenciais para verificar a conectividade com o banco de dados de destino.

      Captura de tela que mostra detalhes do Banco de Dados SQL do Azure.

    3. Em seguida, mapeie o banco de dados de origem e o banco de dados de destino para a migração. Para Banco de dados de destino, selecione o destino do Banco de Dados SQL do Azure. Em seguida, selecione Avançar para ir para a próxima etapa no assistente de migração.

      Captura de tela do mapeamento de origem e de destino.

  2. Na Etapa 4: Modo de migração, selecione Migração offline e Avançar.

    Captura de tela que mostra a seleção de migrações offline.

  3. Na Etapa 5: Configuração da fonte de dados, conclua as seguintes etapas:

    1. Em Credenciais de origem, insira as credenciais do SQL Server de origem.

    2. Em Selecionar tabelas, selecione o ícone de lápis Editar.

      Captura de tela que mostra as credenciais do SQL Server de origem.

    3. Em Selecionar tabelas para <nome do banco de dados>, selecione as tabelas a serem migradas para o destino. A coluna Tem linhas indica se a tabela de destino tem linhas no banco de dados de destino. Você pode selecionar uma ou mais tabelas. Em seguida, selecioneAtualizar.

      Você pode atualizar a lista de tabelas selecionadas a qualquer momento antes de iniciar a migração.

      No exemplo abaixo, um filtro de texto foi aplicado para selecionar as tabelas que contêm a palavra Employee. Selecione uma lista de tabelas de acordo com suas necessidades de migração.

      Captura de tela que mostra a seleção da tabela.

  4. Examine as seleções de tabela e selecione Avançar para passar para a próxima etapa no assistente de migração.

    Captura de tela que mostra as tabelas selecionadas a serem migradas.

Observação

Se nenhuma tabela estiver selecionada ou se um nome de usuário e senha não forem inseridos, o botão Avançar não estará disponível para seleção.

Agora, você pode migrar o esquema do banco de dados e os dados usando o Serviço de Migração de Banco de Dados. Além, disso, você pode usar ferramentas como a extensão dacpac do SQL Server ou a extensão Projetos de Banco de Dados SQL no Azure Data Studio para migrar o esquema antes de selecionar a lista das tabelas a serem migradas.

Criar uma instância do Serviço de Migração de Banco de Dados

Na Etapa 6: Serviço de Migração de Banco de Dados do Azure no assistente Migrar para o SQL do Azure, crie uma instância do Serviço de Migração de Banco de Dados ou reutilize uma existente criada anteriormente.

Observação

Se você já criou uma instância do Serviço de Migração de Banco de Dados usando o portal do Azure, não é possível reutilizar a instância no assistente de migração no Azure Data Studio. Você só poderá reutilizar uma instância se a tiver criado usando o Azure Data Studio.

Usar uma instância existente do Serviço de Migração de Banco de Dados

Para usar uma instância existente do Serviço de Migração de Banco de Dados:

  1. Em Grupo de recursos, selecione o grupo de recursos que contém uma instância existente do Serviço de Migração de Banco de Dados.

  2. Em Serviço de Migração de Banco de Dados do Azure, selecione uma instância existente do Serviço de Migração de Banco de Dados que esteja no grupo de recursos selecionado.

  3. Selecione Avançar.

    Captura de tela que mostra a seleção do Serviço de Migração de Banco de Dados.

Criar uma instância do Serviço de Migração de Banco de Dados

Para criar uma instância do Serviço de Migração de Banco de Dados:

  1. Em Grupo de recursos, crie um grupo de recursos que conterá uma nova instância do Serviço de Migração de Banco de Dados.

  2. Em Serviço de Migração de Banco de Dados do Azure, selecione Criar.

  3. Em Criar Serviço de Migração de Banco de Dados do Azure, insira um nome para a instância do Serviço de Migração de Banco de Dados e selecione Criar.

  4. Em Configurar runtime de integração, conclua as seguintes etapas:

    1. Selecione o link Baixar e instalar runtime de integração para abrir o link de download em um navegador da Web. Baixe o runtime de integração e instale-o em um computador que atenda aos pré-requisitos para se conectar à instância do SQL Server de origem.

      Captura de tela que mostra o link Baixar e instalar o runtime de integração.

      Quando a instalação for concluída, o Microsoft Integration Runtime Configuration Manager será aberto automaticamente para dar início ao processo de registro.

    2. Na tabela Chave de autenticação, copie uma das chaves de autenticação fornecidas no assistente e cole-a no Azure Data Studio.

      Captura de tela que realça a tabela de chaves de autenticação no assistente.

      Se a chave de autenticação for válida, um ícone de verificação verde aparecerá no Integration Runtime Configuration Manager. Uma verificação verde indica que você pode continuar a Registrar.

      Depois de registrar o runtime de integração auto-hospedada, feche o Microsoft Integration Runtime Configuration Manager.

      Observação

      Para obter mais informações sobre o runtime de integração auto-hospedada, consulte Criar e configurar um runtime de integração auto-hospedada.

  5. Em Criar Serviço de Migração de Banco de Dados do Azure no Azure Data Studio, selecione Testar conectividade para validar se a instância do Serviço de Migração de Banco de Dados está conectada ao runtime de integração auto-hospedada que acabou de ser registrado.

    Captura de tela que mostra o teste de conectividade do IR.

  6. Retorne ao assistente de migração no Azure Data Studio.

Iniciar a migração de banco de dados

Na Etapa 7: Resumo no assistente Migrar para o SQL do Azure, examine a configuração que você criou e selecione Iniciar migração para iniciar a migração de banco de dados.

Captura de tela que mostra como iniciar a migração.

Monitorar a migração de banco de dados

  1. No Azure Data Studio, no menu do servidor em Geral, selecione Migração de SQL do Azure para ir para o painel de suas migrações do Banco de Dados SQL do Azure.

    Em Status de migração do banco de dados, você pode acompanhar as migrações que estão em andamento, que foram concluídas e que falharam (se houver) ou pode exibir todas as migrações de banco de dados.

    Captura de tela que mostra o painel de migração do monitor.

  2. Selecione Migrações de banco de dados em andamento para exibir as migrações ativas.

    Para obter mais informações sobre uma migração específica, selecione o nome do banco de dados.

    Captura de tela que mostra os detalhes da migração do banco de dados.

    O Serviço de Migração de Banco de Dados retorna o status de migração conhecido mais recente sempre que o status da migração é atualizado. A seguinte tabela descreve os possíveis status:

    Status Descrição
    Preparando a cópia O serviço está desabilitando estatísticas automáticas, gatilhos e índices na tabela de destino.
    Copiando Os dados estão sendo copiados do banco de dados de origem no banco de dados de destino.
    Cópia concluída A cópia de dados foi concluída. O serviço está aguardando outras tabelas para concluir a cópia a fim de iniciar as etapas finais para retornar as tabelas ao esquema original.
    Como recriar índices O serviço está recompilando índices em tabelas de destino.
    Êxito Todos os dados são copiados e os índices são recriados.
  3. Verifique a página de detalhes da migração para exibir o status atual de cada banco de dados.

    Este é um exemplo da migração de banco de dados AdventureWorks2022 com o status Criando:

    Captura de tela que mostra um status de criação de migração.

  4. Na barra de menus, selecione Atualizar para atualizar o status da migração.

    Depois que o status da migração é atualizado, o status atualizado da migração do banco de dados de exemplo AdventureWorks2022 é Em andamento:

    Captura de tela que mostra um status de migração em andamento.

  5. Selecione um nome de banco de dados para abrir a exibição de tabela. Nessa exibição, você verá o status atual da migração, o número de tabelas que estão nesse status e um status detalhado de cada tabela.

    Captura de tela que mostra a migração da tabela de monitoramento.

    Quando todos os dados da tabela forem migrados para o destino do Banco de Dados SQL do Azure, o Serviço de Migração de Banco de Dados atualizará o status da migração de Em andamento para Bem-sucedido.

    Captura de tela que mostra a migração bem-sucedida.

Observação

O Serviço de Migração de Banco de Dados otimiza a migração ignorando tabelas sem dados (0 linha). Tabelas que não têm dados não aparecem na lista, mesmo que você selecione as tabelas ao criar a migração.

Você concluiu a migração para o Banco de Dados SQL do Azure. Incentivamos você a realizar uma série de tarefas pós-migração para garantir que tudo funcione de maneira estável e eficiente.

Importante

Não se esqueça de aproveitar os recursos avançados baseados em nuvem do Banco de Dados SQL do Azure. Os recursos incluem alta disponibilidade interna, detecção de ameaças e monitoramento e ajuste da carga de trabalho.

Limitações

A migração offline do Banco de Dados SQL do Azure utiliza pipelines do ADF (Azure Data Factory) para movimentação de dados e, portanto, segue as limitações do ADF. Um ADF correspondente é criado quando um serviço de migração de banco de dados também é criado. Portanto, os limites de fábrica se aplicam por serviço.

  • O computador em que o SHIR está instalado atua como a computação para migração. Verifique se esse computador pode lidar com a carga de CPU e memória da cópia de dados. Para saber mais, examine Criar e configurar um runtime de integração auto-hospedada.
  • 100.000 tabelas por limite de banco de dados.
  • 10.000 migrações simultâneas de banco de dados por serviço.
  • A velocidade de migração depende muito do SKU do Banco de Dados SQL do Azure de destino e do host de runtime de integração auto-hospedada.
  • A migração do banco de dados SQL do Azure é mal escalonada com números de tabela devido à sobrecarga do ADF nas atividades iniciais. Se um banco de dados tiver milhares de tabelas, o processo de inicialização de cada tabela pode levar alguns segundos, mesmo que elas sejam compostas por uma linha com 1 bit de dados.
  • Atualmente, não há suporte para migração aos nomes de tabela do Banco de Dados SQL do Azure com caracteres de byte duplo. A mitigação é renomear tabelas antes da migração. Elas podem ser alteradas de volta para seus nomes originais após a migração bem-sucedida.
  • Tabelas com colunas grandes de blobs podem falhar ao migrar devido ao tempo limite.
  • Atualmente, não há suporte aos nomes de banco de dados com SQL Server reservados.
  • Atualmente, não há suporte aos nomes de banco de dados que incluem ponto e vírgula.
  • As colunas computadas não são migradas.