Compartilhar via


Tutorial: Migrar o SQL Server para o SQL Server em uma Máquina Virtual do Azure com o DMS do Azure (online)

Você pode usar o Azure DMS (Serviço de Migração de Banco de Dados do Azure) por meio do portal do Azure para executar uma migração de banco de dados online de uma instância local do SQL Server para o que é o SQL Server em Máquinas Virtuais do Windows do Azure? (VM do Azure).

Observação

Este tutorial usa o modo de migração online. Para obter opções de migração offline, consulte Tutorial: Migrar o SQL Server para o SQL Server em uma Máquina Virtual do Azure com o DMS do Azure (offline).

Neste tutorial, você aprenderá como:

  • Inicie o Assistente de Migração para o Azure SQL no portal do Azure.
  • Especifique os detalhes do SQL Server de origem, do local de backup e do SQL Server de destino na VM do Azure.
  • Configure o assistente para acessar o servidor de origem e backups.
  • Inicie e monitore o progresso da migração.
  • Realizar a substituição da migração quando você estiver pronto.

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:

  • Verifique se você pode acessar o portal do Azure.

  • Verifique se o provedor de recursos Microsoft.DataMigration está registrado em sua assinatura.

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

    • Colaborador para a instância de destino do SQL Server em uma VM do Azure e para a conta de armazenamento em que você carrega seus arquivos de backup de banco de dados de um compartilhamento de rede do SMB (Server Message Block).

    • Função de leitor para o grupo de recursos do Azure que contém a instância de destino do SQL Server em uma VM do Azure ou para sua conta de Armazenamento do Azure.

    • Função de proprietário ou colaborador para a assinatura do Azure.

    • Como alternativa ao uso de uma dessas funções internas, você pode atribuir funções personalizadas.

    Quando você usa o portal do Azure para migrar, o usuário conectado deve ter acesso ao Leitor de Dados de Blob de Armazenamento no contêiner de blob que contém os arquivos de backup para poder listar arquivos e pastas durante a instalação da migração.

  • Crie uma instância de destino do SQL Server nas Máquinas Virtuais do Azure.

    Se você tiver uma VM do Azure existente, registre-a na extensão do Agente IaaS do SQL Server no modo de gerenciamento completo.

  • Verifique se os logons usados para se conectar à instância do SQL Server de origem são membros da função de servidor sysadmin ou têm CONTROL SERVER permissão.

  • Forneça um compartilhamento de rede SMB, um compartilhamento de arquivos da conta de Armazenamento do Azure ou um contêiner de blob da conta de Armazenamento do Azure que contenha seus arquivos de backup de banco de dados completos e arquivos de backup de log de transações subsequentes. O DMS do Azure usa o local de backup durante a migração de banco de dados.

    • Sempre use uma conta de armazenamento dedicada para migração. Compartilhá-lo com outras cargas de trabalho pode levar a conflitos e riscos de segurança.

    • Depois que a migração for concluída, gire a Chave da Conta de Armazenamento para manter os backups seguros ou exclua a conta de armazenamento se ela não for mais necessária.

    • O DMS do Azure não faz backups de banco de dados e não inicia nenhum backup de banco de dados em seu nome. Em vez disso, o serviço usa arquivos de backup de banco de dados existentes para a migração.

    • Se os arquivos de backup do banco de dados estiverem em um compartilhamento de rede SMB, crie uma conta de Armazenamento do Azure que permita que o DMS do Azure carregue os arquivos de backup do banco de dados e migre bancos de dados. Crie a conta de Armazenamento do Azure na mesma região em que você cria sua instância do DMS do Azure.

    • Você pode gravar cada backup em um arquivo de backup separado ou em vários arquivos de backup. Não há suporte para acrescentar vários backups, como logs completos e de transações, em apenas uma mídia de backup.

    • É possível fornecer backups compactados para reduzir a probabilidade de ocorrência de problemas potenciais associados à migração de backups de grande porte.

  • Verifique se a conta de serviço executando a instância de SQL Server de origem tem permissões de leitura e gravação no compartilhamento de rede SMB que contém arquivos de backup de banco de dados.

  • Se você estiver migrando um banco de dados protegido pela TDE (transparent Data Encryption), migre o certificado da instância do SQL Server de origem para o SQL Server em uma VM do Azure antes de migrar dados. Para obter mais informações, consulte Mover um banco de dados protegido por TDE para outro SQL Server.

    Dica

    Se o banco de dados contiver dados confidenciais protegidos pelo Always Encrypted, o processo de migração migrará automaticamente suas chaves Always Encrypted para sua instância de destino do SQL Server em uma VM do Azure.

  • Se os backups de banco de dados estiverem em um compartilhamento de arquivos de rede, forneça um computador no qual você possa instalar um runtime de integração auto-hospedada para acessar e migrar backups de banco de dados. O assistente de migração fornece o link de download e as chaves de autenticação para baixar e instalar seu runtime de integração auto-hospedada.

    Em preparação para a migração, verifique se o computador de instalação do runtime de integração auto-hospedada tem as seguintes regras de firewall de saída e nomes de domínio habilitados:

    Nomes de domínios Porta de saída Description
    Nuvem pública: {datafactory}.{region}.datafactory.azure.net
    ou*.frontend.clouddatahub.net

    Azure Governamental: {datafactory}.{region}.datafactory.azure.us
    Microsoft Azure operado pela 21Vianet: {datafactory}.{region}.datafactory.azure.cn
    443 Exigido pelo runtime de integração auto-hospedada para se conectar ao DMS do Azure.
    Para um data factory recém-criado em uma nuvem pública, localize o FQDN (nome de domínio totalmente qualificado) da chave do runtime de integração auto-hospedada, no formato {datafactory}.{region}.datafactory.azure.net.
    Para um data factory existente, se você não vir o FQDN na chave de integração auto-hospedada, use *.frontend.clouddatahub.net.
    download.microsoft.com 443 Exigido pelo runtime de integração auto-hospedada para fazer o download das atualizações. Se você desativar a atualização automática, poderá ignorar a configuração deste domínio.
    *.core.windows.net 443 Usado pelo runtime de integração auto-hospedada que se conecta à conta de Armazenamento do Azure para carregar backups de banco de dados do seu compartilhamento de rede

    Dica

    Se você já armazenar seus arquivos de backup de banco de dados em uma conta de Armazenamento do Azure, não precisará de um runtime de integração auto-hospedada durante o processo de migração.

  • Se você usa um runtime de integração auto-hospedada, certifique-se de que o computador onde o runtime está instalado possa se conectar à instância do SQL Server de origem e ao compartilhamento de arquivo de rede onde os arquivos de backup estão localizados.

  • Habilite a porta de saída 445 para permitir o acesso ao compartilhamento de arquivo de rede. Para saber mais, confira recomendações para usar um runtime de integração auto-hospedada.

  • Se você estiver usando o DMS do Azure pela primeira vez, verifique se o Microsoft.DataMigrationprovedor de recursos está registrado em sua assinatura.

Iniciar uma nova migração

Este tutorial descreve uma migração online do SQL Server para o SQL Server em uma VM do Azure (Máquina Virtual do Azure).

Para iniciar uma nova migração:

  1. Acesse o Serviço de Migração de Banco de Dados do Azure no portal do Azure. Use +Criar para criar uma nova instância do Serviço de Migração de Banco de Dados ou selecione uma instância existente. Em seguida, vá para a instância do Serviço de Migração de Banco de Dados.

  2. No painel Visão geral da instância do DMS do Azure, selecione Nova migração.

    Captura de tela do Painel de Migração de Banco de Dados do Azure.

  3. Em Selecionar novo cenário de migração , escolha sua origem, tipo de servidor de destino, local de armazenamento de arquivos de backup, modo de migração como migração online e escolha Selecionar.

    Seus backups de banco de dados podem estar localizados em um compartilhamento de rede local ou em um contêiner de blobs no Armazenamento do Azure.

    Captura de tela do novo cenário de migração.

    Se você fornecer backups de banco de dados em um compartilhamento de rede local, configure um runtime de integração auto-hospedado na etapa seguinte do assistente. Você precisa de um runtime de integração auto-hospedada para acessar os backups do banco de dados de origem, verificar a validade do conjunto de backup e carregar backups na conta de armazenamento do Azure. Se os backups de banco de dados já estiverem em um contêiner de blob de armazenamento do Azure, você não precisará de um runtime de integração autogerenciado.

    No modo de migração online, o banco de dados do SQL Server de origem pode ser usado para atividade de leitura e gravação, enquanto os arquivos de backup do banco de dados são restaurados continuamente na instância de destino do SQL Server em uma VM do Azure. O tempo de inatividade do aplicativo é limitado à duração da replicação no final da migração.

  4. No Assistente de Migração de Blobs da Máquina Virtual do SQL do Azure, siga estas etapas:

    1. Na guia Detalhes da origem , insira detalhes para a instância do SQL Server de origem e selecione Avançar: Conectar-se ao SQL Server de origem.

      Captura de tela do Controle do Código-Fonte.

    2. Na guia Selecionar destino de migração , insira detalhes para a assinatura, o grupo de recursos e a VM do SQL Server de destino. Em seguida, selecione Avançar: Configuração da fonte de dados.

    3. Na etapa de configuração da fonte de dados, selecione o local dos backups do banco de dados. Seus backups de banco de dados podem estar localizados em um compartilhamento de rede local ou em um contêiner de blob do Armazenamento do Azure.

      Se você fornecer backups de banco de dados em um compartilhamento de rede local, configure um runtime de integração auto-hospedado na etapa seguinte do assistente. Você precisa de um runtime de integração auto-hospedada para acessar os backups do banco de dados de origem, verificar a validade do conjunto de backup e carregar backups na conta de armazenamento do Azure. Se os backups de banco de dados já estiverem em um contêiner de blob de armazenamento do Azure, você não precisará de um runtime de integração autogerenciado.

      • Para backups armazenados em um contêiner de blob do Armazenamento do Azure, insira ou selecione as seguintes informações:

        Nome Description
        Grupo de recursos O grupo de recursos em que os arquivos de backup estão localizados.
        Detalhes da conta de armazenamento A conta de armazenamento em que os arquivos de backup estão localizados.
        Contêiner de blob O contêiner de blob em que os arquivos de backup estão localizados.
        Folder A pasta em que os arquivos de backup estão localizados.
        Nome do banco de dados de destino Você pode alterar o nome do banco de dados de destino durante o processo de migração.

        Se a funcionalidade de verificação de loopback estiver habilitada e o SQL Server de origem e o compartilhamento de arquivos estiverem no mesmo computador, a origem não poderá acessar o compartilhamento de arquivos com o FQDN. Para corrigir esse problema, desabilite a funcionalidade de verificação de loopback.

        Captura de tela da configuração da fonte de dados do assistente de migração de blobs online.

      • Para backups localizados em um compartilhamento de rede, insira as seguintes informações adicionais nas respectivas páginas.

        Nome Description
        Nome do servidor de origem O FQDN ou o IP do servidor de origem. Verifique se a conta de serviço que executa a instância do SQL Server de origem tem privilégios de leitura no compartilhamento de rede.
        Tipo de Autenticação Selecione o tipo de autenticação: SQL ou Windows
        Credenciais de origem - nome de usuário A credencial (autenticação do Windows e de SQL) para se conectar à instância do SQL Server de origem e validar os arquivos de backup.
        Credenciais de origem - senha A credencial (autenticação do Windows e de SQL) para se conectar à instância do SQL Server de origem e validar os arquivos de backup.
        Local de compartilhamento de rede que contém os backups O local de compartilhamento de rede que contém os arquivos de backup completos e de logs de transações. O processo de migração ignora automaticamente arquivos inválidos ou arquivos de backup no compartilhamento de rede que não pertencem ao conjunto de backup válido.
        Conta de usuário do Windows com acesso de leitura ao local de compartilhamento de rede A credencial do Windows (nome de usuário) que tem acesso de leitura ao compartilhamento de rede para recuperar os arquivos de backup.
        Senha A credencial do Windows (senha) que tem acesso de leitura ao compartilhamento de rede para recuperar os arquivos de backup.
        Nome do banco de dados de destino Você pode alterar o nome do banco de dados de destino durante o processo de migração.

Cenários de armazenamento de backup

A extensão de migração do SQL do Azure para o Azure Data Studio não requer mais configurações específicas nas configurações de rede da sua conta de Armazenamento do Microsoft Azure para migrar seus bancos de dados do SQL Server para o Azure.

Verifique se os recursos podem acessar a conta de Armazenamento do Azure. Dependendo do local de backup do banco de dados e das configurações de rede de conta de armazenamento desejadas, consulte a tabela a seguir para os vários cenários de migração e configurações de rede:

Scenario Compartilhamento de rede SMB Contêiner da conta de Armazenamento do Microsoft Azure
Habilitado de todas as redes Sem etapas extras Sem etapas extras
Habilitado a partir das redes virtuais e endereços IP selecionados SHIR (runtime de integração auto-hospedada) local Backups armazenados no contêiner do Armazenamento do Azure
Habilitado em redes virtuais selecionadas e endereços IP + ponto de extremidade privado SHIR (runtime de integração auto-hospedada) da VM do Azure Backups armazenados no contêiner de Armazenamento do Azure (ponto de extremidade privado)

SHIR (runtime de integração local auto-hospedada)

Se você instalar o SHIR em sua rede local, siga estas etapas:

  1. Conecte-se ao portal do Azure a partir do computador SHIR.

  2. Abra sua conta de Armazenamento do Azure e vá para o painel Rede .

  3. Verifique se o acesso à rede pública está definido como Habilitado em redes virtuais selecionadas e endereços IP.

  4. Na seção Firewall , selecione a caixa de seleção Adicionar o endereço IP do cliente .

  5. Insira o endereço IP do cliente do computador host e selecione Salvar.

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

Etapa 1: no portal do Azure, navegue até a página do Serviço de Migração de Banco de Dados do Azure. Crie uma nova instância do Serviço de Migração de Banco de Dados do Azure ou reutilize uma instância existente criada anteriormente.

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:

  • No portal do Azure, em os Serviços de Migração de Banco de Dados do Azure, selecione uma instância existente do Serviço de Migração de Banco de Dados a ser usada, garantindo que ela esteja presente no Grupo de Recursos e na região corretos.

    Captura de tela que mostra a visão geral 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. No portal do Azure, em Serviço de Migração de Banco de Dados do Azure, selecione Criar.

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

  2. Em Selecionar cenário de migração e Serviço de Migração de Banco de Dados, selecione a entrada desejada, como o tipo de servidor de Origem e de Destino, selecione o Serviço de Migração de Banco de Dados e Selecionar.

    Captura de tela que mostra cenários de migração do Serviço de Migração de Banco de Dados.

  3. Na próxima tela Criar Serviço de Migração de Dados, selecione sua assinatura e grupo de recursos, selecione Locale insira o nome do Serviço de Migração de Banco de Dados. Selecione Examinar + criar. Isso cria o Serviço de Migração de Banco de Dados do Azure.

    Captura de tela que mostra os detalhes de entradas obrigatórias do Serviço de Migração de Banco de Dados.

  4. Se o SHIR (runtime de integração auto-hospedada) for requerido, na página de visão geral do Serviço de Migração de Banco de Dados e em Configurações, selecione Runtime de Integração e conclua as etapas a seguir:

    1. Selecione Configurar o runtime de integração e escolha o link Baixar e instalar o 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. Para obter mais informações, consulte as Recomendações do SHIR.

      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 de chaves de autenticação, copie uma das chaves de autenticação fornecidas no assistente e cole-a no Microsoft Integration Runtime Configuration Manager.

      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. Pode levar vários minutos para refletir os detalhes do Nó no portal do Azure para o Serviço de Migração de Banco de Dados, em Configurações > Runtime de integração.

      Captura de tela que destaca o status do SHIR no portal do Azure.

      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.

Iniciar a migração de banco de dados

Na guia Resumo da migração do banco de dados, examine os detalhes e selecione Iniciar migração. O serviço inicia a migração de banco de dados e o leva automaticamente de volta ao painel do DMS do Azure.

Captura de tela do resumo da migração de dados do assistente de migração de blobs online.

Monitorar a migração de banco de dados

  1. Para monitorar a migração do banco de dados, no painel Visão geral da instância do Serviço de Migração de Banco de Dados, selecione Monitorar migrações.

    Captura de tela da visão geral do Serviço de Migração de Banco de Dados do Azure no portal do Azure.

  2. Para monitorar a migração de banco de dados, no painel Visão geral da instância do DMS, selecione Monitorar migrações.

  3. Na guia Migrações, acompanhe as migrações que estão em andamento, que foram concluídas e que falharam (se houver) ou exiba todas as migrações de banco de dados. Na barra de menus, selecione Atualizar para atualizar o status da migração.

    Captura de tela do monitoramento da migração.

O DMS do Azure retorna o status de migração mais recente conhecido sempre que o status de migração for atualizado. A seguinte tabela descreve os possíveis status:

Situação Description
Chegou O arquivo de backup foi recebido no local de backup de origem e validado.
Carregando O runtime de integração está carregando o arquivo de backup no armazenamento do Azure.
Carregado O arquivo de backup foi carregado no armazenamento do Azure.
Restaurando O serviço está restaurando o arquivo de backup para o SQL Server em uma VM do Azure.
Restaurado O arquivo de backup foi restaurado com êxito no SQL Server em uma VM do Azure.
Cancelada O processo de migração foi cancelado.
Ignorado O arquivo de backup foi ignorado pois não pertence a uma cadeia de backup de banco de dados válida.

Migração de substituição completa

A etapa final do tutorial é concluir a transferência de migração. A conclusão garante que o banco de dados migrado no SQL Server na Máquina Virtual do Azure esteja pronto para uso. O tempo de inatividade é necessário para aplicativos que se conectam ao banco de dados e a temporização da transferência precisa ser cuidadosamente planejada com os participantes da empresa ou do aplicativo.

Para concluir a transferência:

  1. Interromper todas as transações de entrada para o banco de dados de origem.

  2. 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.

  3. Faça um backup de log final do banco de dados de origem no local de backup especificado.

  4. Coloque o banco de dados de origem no modo somente leitura. Portanto, os usuários podem ler dados do banco de dados, mas não modificá-los.

  5. Verifique se todos os backups de banco de dados têm o status Restaurado na página de detalhes de monitoramento.

  6. Selecione Transição completa na página detalhes de monitoramento.

Durante o processo de transferência, o status da migração muda de em andamento para concluir. O status de migração muda para êxito quando o processo de transferência é concluído. A migração do banco de dados foi bem-sucedida e se o banco de dados migrado está pronto para uso.