Partilhar via


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

Você pode usar o Serviço de Migração de Banco de Dados do Azure por meio da extensão de migração do SQL do Azure para o 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 exemplo 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, aprenderás como:

  • Abra o assistente Migrar para o Azure SQL no Azure Data Studio
  • Executar uma avaliação dos bancos de dados SQL Server de origem
  • Coletar dados de desempenho da instância de origem do SQL Server
  • Obtenha uma recomendação da SKU do Banco de Dados SQL do Azure que funcionará melhor para sua carga de trabalho
  • Criar uma instância do Serviço de Migração de Banco de Dados do Azure
  • Inicie a migração e monitore o progresso até a conclusão

Sugestão

No Serviço de Migração de Banco de Dados do Azure, você pode migrar seus bancos de dados offline ou enquanto eles estiverem online. Numa migração de offline, o tempo de inatividade do aplicativo começa quando a migração é iniciada. Para limitar o tempo de inatividade ao tempo que você leva para cortar para o novo ambiente após a migração, use um migração de online. Recomendamos que você teste 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 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 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 SQL do Azure a partir do Azure Data Studio Marketplace.

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

    • Colaborador para a instância de destino do Banco de Dados SQL do Azure
    • 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 nova 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 ou 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 é membro da função db_datareader e se o logon da instância do SQL Server de destino é 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 SHIR mínima com suporte necessária é 5.37 ou superior.

  • Se estiver a utilizar o Serviço de Migração de Base de Dados pela primeira vez, certifique-se de que o fornecedor de recursos Microsoft.DataMigration está registado na sua subscrição.

Observação

Agora, você pode migrar o esquema e os dados do banco de 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 do Banco de Dados SQL no Azure Data Studio para migrar o esquema antes de selecionar a lista de tabelas a serem migradas.

Se nenhuma tabela existir no destino do Banco de Dados SQL do Azure ou nenhuma tabela for selecionada antes de iniciar a migração, o botão Avançar não estará disponível para iniciar a tarefa de migração. Se não existir nenhuma tabela no destino, você deverá selecionar a opção Migração de esquema para avançar.

Abra o assistente Migrar para o Azure SQL no Azure Data Studio

Para abrir o assistente Migrar para o Azure SQL:

  1. No Azure Data Studio, vá para Connections. Selecione e conecte-se à sua instância local do SQL Server. 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 do 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 SQL do Azure.

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

  4. No painel de Migração do 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 anteriormente guardada.

Execute a avaliação do banco de dados, colete dados de desempenho e obtenha recomendações do Azure

  1. Em Etapa 1: Bancos de dados para avaliação no assistente Migrar para o Azure SQL, selecione os bancos de dados que você 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 da avaliação e recomendações, conclua as seguintes etapas:

    1. Em Escolha seu destino SQL do Azure, selecione Banco de Dados SQL do Azure.

      Captura de ecrã que mostra a seleção do destino da Base de Dados SQL do Azure.

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

      Captura de ecrã que mostra os resultados da avaliação.

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

      Captura de ecrã que mostra o relatório de avaliação.

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

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

    5. Selecione Colecione agora os dados de desempenho. Selecione uma pasta no seu computador local para armazenar os registos de desempenho e, em seguida, escolha 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. Depois que a primeira recomendação for gerada, você poderá selecionar Reiniciar a coleta de dados para continuar o processo de coleta de dados e refinar a recomendação de SKU. Uma avaliação alargada é especialmente útil se os seus padrões de utilização variarem ao longo do tempo.

      Captura de ecrã que mostra os dados de desempenho recolhidos.

    6. No destino selecionado do Banco de Dados SQL do Azure , selecione Exibir 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 Rever Recomendações da Base de Dados SQL do Azure, reveja 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 continuar a migração do banco de dados no assistente.

Definir configurações de migração

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

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

      Captura de ecrã que mostra os detalhes da conta do Azure.

    2. Para o Servidor do Banco de Dados SQL do Azure, selecione o servidor do Banco de Dados SQL do Azure de destino (servidor lógico). Insira um nome de usuário e 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 ecrã que mostra os detalhes da Base 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 passar para a próxima etapa no assistente de migração.

      Captura de tela que mostra o mapeamento de origem e destino.

  2. Em Etapa 4: Modo de migração, selecione Migração offline e, em seguida, selecione 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. Pode selecionar uma ou mais tabelas. Em seguida, selecione Atualizar.

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

      No exemplo a seguir, um filtro de texto é aplicado para selecionar tabelas que contêm a palavra Employee. Selecione uma lista de tabelas com base nas suas necessidades de migração.

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

  4. Reveja as suas seleções de tabela e, em seguida, selecione Seguinte para avançar para o passo seguinte no assistente de migração.

    Captura de tela que mostra as tabelas selecionadas para migrar.

Observação

Se nenhuma tabela for 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 e os dados do banco de 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 do Banco de Dados SQL no Azure Data Studio para migrar o Esquema antes de selecionar a lista de 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 nova instância do Serviço de Migração de Banco de Dados ou reutilize uma instância existente criada anteriormente.

Observação

Se você criou anteriormente uma instância do Serviço de Migração de Banco de Dados usando o portal do Azure, não poderá reutilizar a instância no assistente de migração no Azure Data Studio. Você pode reutilizar uma instância somente se tiver criado a instância 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 Seguinte.

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

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

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

  1. Em grupo de recursos, crie um novo grupo de recursos para 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 novo.

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

  4. Em Configurar o tempo de execução da integração, conclua as seguintes etapas:

    1. Selecione o link Download and install integration runtime link para abrir o link de download em um navegador da Web. Baixe o tempo de execução da 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 ecrã que mostra o link Baixar e instalar o runtime de integração.

      Quando a instalação estiver concluída, o Microsoft Integration Runtime Configuration Manager será aberto automaticamente para iniciar o processo de registro.

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

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

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

      Depois de registar o self-hosted Integration Runtime, feche o Microsoft Integration Runtime Configuration Manager.

      Observação

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

  5. No Criar Serviço de Migração de Banco de Dados do Azure no Azure Data Studio, em, selecione Testar conexão para verificar se a instância recém-criada do Serviço de Migração de Banco de Dados está conectada ao ambiente de execução de integração auto-hospedado recém-registrado.

    Captura de tela que mostra o teste de conectividade IR.

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

Iniciar a migração do banco de dados

Na Etapa 7: Resumo no assistente Migrar para o SQL do Azure, revise a configuração criada e selecione Iniciar migração para iniciar a migração do banco de dados.

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

Monitorar a migração do banco de dados

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

    Em Status da migração do banco de dados, você pode acompanhar as migrações em andamento, concluídas e com falha (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 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 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 tabela a seguir descreve os status possíveis:

    Situação Descrição
    Preparação para a cópia O serviço está desativando estatísticas automáticas, gatilhos e índices na tabela de destino.
    Copiando Os dados estão sendo copiados do banco de dados de origem para o banco de dados de destino.
    Cópia concluída A cópia dos dados foi concluída. O serviço está aguardando que outras tabelas terminem a cópia para que possa iniciar as etapas finais de retorno das tabelas ao esquema original.
    Reconstruindo índices O serviço está a reconstituir índices nas tabelas de destino.
    Bem-sucedido Todos os dados são copiados e os índices são reconstruídos.
  3. Verifique a página de detalhes da migração para exibir o status atual de cada banco de dados.

    Aqui está um exemplo da migração do banco de AdventureWorks2022 dados com o status Criando:

    Captura de ecrã que mostra um estado 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 para a migração de banco de dados de exemplo AdventureWorks2022 está 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ê vê o status atual da migração, o número de tabelas que estão atualmente nesse status e um status detalhado de cada tabela.

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

    Quando todos os dados da tabela são migrados para o destino do Banco de Dados SQL do Azure, o Serviço de Migração de Banco de Dados atualiza o status da migração de Em andamento para Com êxito.

    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 linhas). As 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 passar por uma série de tarefas pós-migração para garantir que tudo funcione de forma suave e eficiente.

Importante

Certifique-se de aproveitar os recursos avançados baseados em nuvem do Banco de Dados SQL do Azure. Os recursos incluem alta disponibilidade integrada, deteção de ameaças e monitoramento e ajuste de sua carga de trabalho.

Limitações

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

  • A máquina onde o SHIR está instalado atua como o cálculo para a migração. Certifique-se de que esta máquina pode lidar com a carga de CPU e memória da cópia de dados. Para saber mais, consulte Criar e configurar um tempo de execução de integração auto-hospedado.
  • Limite de 100.000 tabelas por banco de dados.
  • 10.000 migrações simultâneas de banco de dados por serviço.
  • A velocidade de migração depende muito da SKU do Banco de Dados SQL do Azure de destino e do host do Integration Runtime auto-hospedado.
  • A migração do Banco de Dados SQL do Azure é mal dimensionada com números de tabela devido à sobrecarga do ADF no início das atividades. 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 de nomes de tabela do Banco de Dados SQL do Azure com caracteres de byte duplo. A mitigação consiste em renomear tabelas antes da migração; eles podem ser alterados de volta aos seus nomes originais após a migração bem-sucedida.
  • Tabelas com colunas de blob grandes podem falhar na migração devido ao tempo limite.
  • No momento, não há suporte para nomes de bancos de dados com o SQL Server reservado.
  • Atualmente, não há suporte para nomes de banco de dados que incluam ponto-e-vírgula.
  • As colunas computadas não são migradas.