O blog da AWS
Migre o banco de dados SQL Server do Azure SQL Managed Instance para a AWS
Por que você deve migrar do Azure SQL Managed Instancepara a AWS?
Embora o Azure SQL Managed Instance seja uma plataforma totalmente gerenciada compatível com o mecanismo de banco de dados SQL Server 2022 mais recente, a migração para a AWS com o backup COPY_ONLY do SQL Server 2022 tem suas vantagens. Primeiro, ele oferece mais flexibilidade e controle sobre sua infraestrutura. Você pode escolher os tipos de instância, as opções de armazenamento e as configurações de rede que melhor atendam às suas necessidades. Você pode instalar software adicional, aplicar uma otimização de desempenho específica e ter mais controle sobre o ambiente geral. Outro aspecto importante é a redução de custos. Ao migrar para o SQL Server na Amazon Elastic Compute Cloud (Amazon EC2), você tem potencial para economizar nos custos de licenciamento e aproveitar as opções de alta disponibilidade no Amazon EC2.
Abordaremos três métodos diferentes de migração do Azure SQL Managed Instance para a AWS:
- Backup e restauração do SQL Server (COPY_ONLY)
- AWS Database Migration Service (AWS DMS)
- Assistente de importação e exportação do SQL Server.
Visão geral da solução
O diagrama da arquitetura da solução na Figura 1 ilustra os três métodos de migração de um banco de dados do SQL Server para a AWS:
Figura 1: Opções de migração do Azure SQL Managed Instance para o SQL Server na AWS
Você tem várias opções ao migrar do Azure SQL Managed Instance para a AWS. Você pode migrar para o SQL Server no Amazon EC2 ou no Amazon Relational Database Service (Amazon RDS) para SQL Server. A Tabela 1 compara os recursos das três opções de migração que abordamos nesta postagem do blog. Ao compreender os desafios e os benefícios, você pode tomar uma decisão informada sobre qual método atende às suas necessidades e se alinha à sua meta geral de migração.
* Consulte a documentação do AWS DMS para obter detalhes.
Pré-requisitos
- Azure Storage Account
- Banco de dados de origem do SQL Server hospedado no Azure SQL Managed Instance
- Uma conta ativa da AWS com o SQL Server 2022 no Amazon EC2
- Conectividade de rede entre AWS e Azure (VPN, rede privada ou internet)
- SQL Server Management Studio (versão 19.0.1 ou superior)
Método 1. Migre usando o backup COPY_ONLY do SQL Server
Você pode migrar um banco de dados do SQL Server do Azure SQL Managed Instance para o SQL Server no Amazon EC2 usando o backup COPY_ONLY do Azure SQL Managed Instance. Esse método oferece uma maneira fácil de copiar ou mover bancos de dados com todos os objetos de banco de dados do Azure SQL Managed Instance para uma instância do SQL Server 2022 (edição Enterprise, Developer ou Standard). Esse método de migração suporta somente backup e restauração completos e não oferece suporte a backups diferenciais ou de registros de transações. Você precisaria migrar os logins do SQL Server do SQL Server de origem para o SQL Server de destino na AWS.
Observação: o método de backup COPY_ONLY do Azure SQL Managed Instance não oferece suporte ao TDE. Faça backup do banco de dados e dos certificados do SQL Server de origem e desative o TDE antes da migração. Desativar o TDE pode ser uma operação que consome muitos recursos. Planeje essa atividade fora do horário de pico. O TDE pode ser ativado em seu banco de dados SQL Server no Amazon EC2 após a migração.
Certifique-se de ter conectividade entre os bancos de dados SQL Server de origem e destino. Você pode se conectar ao Azure SQL Managed Instance de origem do Amazon EC2 para realizar o backup.
Aqui estão as etapas para realizar a migração:
1.1 Faça login em seu portal de nuvem do Azure e navegue até seu Azure Storage Account.
1.2 Crie um contêiner do Azure Blob storage em seu Azure Storage account, conforme mostrado na Figura 2:
Figura 2: Criar contêiner no Azure Blob Storage
1.3 Você precisa criar um shared access token para o Azure Storage contêiner, conforme mostrado na Figura 3:
Figura 3: Criar shared access token para o storage contêiner
1.4 Em seguida, conecte-se ao Azure SQL Managed Instance por meio do SQL Server Management Studio (SSMS). Use o shared access token da etapa 1.3 para criar a credencial que permitirá o acesso ao Azure Blob Storage usando o script na Figura 4:
Figura 4 Criar credenciais
1.5 Depois que a credencial for criada, você precisará executar o comando de backup COPY_ONLY para fazer um backup completo do banco de dados no Azure Blob Storage usando o script na Figura 5. O Azure SQL Managed Instance oferece somente a opção COPY_ONLY para o comando de backup.
Figura 5: Backup do banco de dados com COPY_ONLY
1.6 Você pode se conectar ao SQL Server 2022 de destino no Amazon EC2 usando SSMS e criar credenciais usando o script na Figura 6 para o Azure SQL Blob storage (que usa o shared access token de acesso criado na etapa 1.3):
1.7 Depois que a credencial for criada, você deve executar o comando restore database no SQL Server de destino no Amazon EC2, usando o script na Figura 7:
Figura 7: Restauração do banco de dados no SQL Server de destino no Amazon EC2
1.8 Em seguida, valide se o banco de dados restaurado está disponível usando SSMS no SQL Server de destino no Amazon EC2, conforme mostrado na Figura 8:
Figura 8: Azure SQL Managed Instance restaurada no SQL Server no EC2
O método de backup e restauração do SQL Server oferece somente backups completos do banco de dados, portanto, esse método exigirá algum tempo de inatividade, dependendo do tamanho do banco de dados.
Método 2. Migre usando o AWS DMS
Se você tem cargas de trabalho essenciais em execução em um Azure SQL Server Managed Instance que precisa de uma migração mínima de tempo de inatividade para a AWS, você pode usar o AWS Database Migration Service (AWSDMS). O AWS DMS, junto com o método de backup e restauração do SQL Server, pode migrar bancos de dados do Azure SQL Server Managed Instance para o SQL Server no Amazon EC2.
Você pode fazer uma migração completa do Change Data Capture (CDC) do Azure SQL Server Managed Instance para o Amazon RDS para SQL Server usando o AWS DMS com o mínimo de tempo de inatividade.
O AWS DMS usa MS-Replication ou MS-CDC para rastrear alterações. Consulte a documentação do AWS DMS para obter detalhes.
Aqui estão as etapas para migrar usando o AWS DMS:
2.1. Primeiro, habilite o CDC no banco de dados e nas tabelas do Azure SQL Server Managed Instance de origem, conforme mostrado na Figura 9:
Figura 9: Habilitar o CDC para o banco de dados de origem do Azure SQL Server Managed Instance
2.2. Em seguida, crie uma instância de replicação do AWS DMS, conforme mostrado na Figura 10:
Figura 10: Crie uma instância de replicação no AWS DMS
2.3. Você precisa criar o Azure SQL Server Managed Instance como um endpoint de origem. Você pode testar a conectividade do endpoint de origem com a instância de replicação selecionando “Test connection” na tela do console “Endpoint Configuration”. Certifique-se de que a conectividade esteja configurada corretamente. Consulte a documentação do AWS DMS para obter detalhes.
Figura 11: Configuração do AWS DMS Endpoint para o Azure SQL Server Managed Instance como fonte
2.4. Depois que o endpoint de origem for criado, crie o endpoint do SQL Server de destino. Em seguida, teste a conectividade do endpoint de origem com a instância de replicação selecionando “Test connection” na tela do console “Endpoint configuration”, conforme mostrado na Figura 12. Certifique-se de que a conectividade esteja configurada corretamente.
Figura 12: Configuração do endpoint do AWS DMS para SQL Server no EC2 como destino
2.5. Para criar uma tarefa do AWS DMS, selecione o endpoint source-to-target, conforme configurado nas etapas 2.3 e 2.4. Selecione o tipo de migração de “Migrar dados existentes e replicar alterações contínuas” para replicação contínua, conforme mostrado na Figura 13:
Figura 13: Configuração da tarefa de migração do AWS DMS
2.6. A próxima etapa é monitorar a tarefa de replicação. A Figura 14 mostra o progresso da tarefa do AWS DMS. Quando os dois bancos de dados estão sincronizados, você pode implementar a atividade de cutover para o SQL Server de destino no Amazon EC2 e concluir a migração com o mínimo de tempo de inatividade.
Figura 14: Relatório de progresso do status da tarefa de migração do AWS DMS na página de resumo da replicação do DMS
Figura 14: Relatório de progresso do status da tarefa de migração do AWS DMS na página de resumo da replicação do DMS
Para obter mais detalhes sobre esse método de migração, leia esta postagem do blog, Migrando seu banco de dados do SQL Server usando o AWS DMS.
Método 3. Migre usando o Assistente de Importação e Exportação do SQL Server
Se você tiver bancos de dados menores ou quiser fazer uma migração parcial de dados ou precisar fazer uma transformação de dados durante a migração, você pode usar o Assistente de Importação e Exportação do SQL Server para migrar do Azure SQL Server Managed Instance para o SQL Server no Amazon EC2.
Você precisa garantir a conectividade entre os bancos de dados do SQL Server de origem e de destino. Você pode se conectar ao Azure SQL Server Managed Instance de origem através do Amazon EC2 para executar as etapas.
Aqui estão as etapas para migrar usando o Assistente de Importação e Exportação do SQL Server:
3.1. Conecte-se ao Azure SQL Server Managed Instance usando o SQL Server Management Studio (SSMS).
3.2. Clique com o botão direito do mouse no banco de dados de origem e selecione tarefas para exportar dados. Forneça detalhes de conexão para o Azure SQL Server Managed Instance usando o Microsoft OLE DB Driver para SQL Server, conforme mostrado na Figura 15:
Figura 15: Escolha a origem para o Assistente de Importação e Exportação do SQL Server
3.3. Em seguida, forneça informações de conexão para o SQL Server 2022 no Amazon EC2 como servidor de destino, conforme mostrado na Figura 16:
Figura 16: Escolha o destino para o Assistente de Importação e Exportação do SQL Server
3.4. Teste as conexões de origem e de destino e verifique se as conexões estão funcionando.
3.5. Selecione as tabelas e visualizações de origem a serem migradas, verifique se o mapeamento está conforme o esperado e clique em OK para migrar os dados.
Figura 17: Relatório de progresso do Assistente de Importação e Exportação do SQL Server
3.6. Valide os dados após a importação conectando-se ao SQL Server de destino via SSMS. Teste e valide os aplicativos e garanta que eles estejam funcionando conforme o esperado.
Para saber mais sobre esse método de migração, confira a seção Cópia em massa em Importação e exportação de dados do SQL Server usando outros métodos.
Resumo
Nesta postagem do blog, abordamos três opções diferentes para migrar do Azure SQL Server Managed Instance para o SQL Server no Amazon EC2. Você pode aproveitar o método nativo de backup e restauração do SQL Server 2022 para migrar para o SQL Server 2022 na AWS. Para uma migração quase em tempo real com o mínimo de tempo de inatividade, considere usar o serviço AWS DMS. Para bancos de dados menores ou para realizar migrações parciais, como objetos selecionados (tabelas, exibições etc.), considere usar o Assistente de Importação e Exportação do SQL Server.
Para migrar bancos de dados do SQL Server da Instância Gerenciada SQL do Azure para a AWS com o mínimo de tempo de inatividade, você também pode aproveitar o CloudBasic do AWS Marketplace.
Para obter mais informações sobre migrações do SQL Server usando outros métodos, consulte Migrar um banco de dados local do Microsoft SQL Server para o Amazon RDS para SQL Server.
Se você está avaliando suas opções de migração e modernização para seus workloads do SQL Server, incluindo o SQL Server 2022, entre em contato conosco. Ficaremos felizes em ajudá-lo com seus planos e iniciativas do SQL Server.
Este artigo foi traduzido do Blog da AWS em Inglês.