Visão geral do link de Instância Gerida
Aplica-se a:Instância Gerenciada SQL do Azure
Este artigo fornece uma visão geral do Link de Instância Gerida, que permite a replicação de dados quase em tempo real entre SQL Server e Instância Gerida SQL do Azure. O link fornece flexibilidade híbrida e mobilidade de banco de dados, pois desbloqueia vários cenários, como dimensionamento de cargas de trabalho somente leitura, descarregamento de análises e relatórios para o Azure e migração para o Azure. E, com o SQL Server 2022, o link permite a recuperação de desastres online com failback para o SQL Server, além de configurar o link da Instância Gerenciada do SQL para o SQL Server 2022.
Para começar, revise prepare seu ambiente para o link.
Visão geral
O link da Instância de SQL Gerida usa grupos de disponibilidade distribuídos para expandir a sua propriedade de dados de uma forma segura, com replicação de dados em quase tempo real a partir do SQL Server hospedado em qualquer local para a Instância de SQL Gerida do Azure, ou da Instância de SQL Gerida do Azure para o SQL Server 2022 hospedado em qualquer local.
O link dá suporte a instâncias do SQL Server de nó único e de vários nós com ou sem grupos de disponibilidade existentes. Por meio do link, você pode usar os benefícios do Azure sem migrar seu patrimônio de dados do SQL Server para a nuvem.
Embora o link ofereça suporte à replicação de um banco de dados por link, é possível replicar vários bancos de dados de uma única instância do SQL Server para uma ou mais instâncias gerenciadas pelo SQL ou replicar o mesmo banco de dados para várias instâncias gerenciadas pelo SQL, configurando vários links - um link para cada banco de dados para o par de instâncias gerenciadas.
O recurso de link atualmente oferece a seguinte funcionalidade:
- Replicação unidirecional do SQL Server versões 2016 e 2019: use o recurso de link para replicar dados de uma só via da instância SQL para a Instância Gerida do Azure SQL. Embora você possa fazer failover manualmente para sua instância gerenciada se houver um desastre, isso quebra o link e o failback não é suportado.
- Recuperação de desastres (SQL Server 2022): Utilize o recurso de link para replicar dados entre o SQL Server 2022 e a Instância Gerenciada do SQL. Realize o failover manual para o secundário durante um desastre, e depois de atenuar o desastre, volte para o primário. Tanto o SQL Server como o SQL Managed Instance podem ser o primário inicial.
Você pode continuar executando o link pelo tempo que precisar, por meses e até anos de cada vez. E para sua jornada de modernização, se ou quando você estiver pronto para migrar para o Azure, o link permite uma experiência de migração consideravelmente melhorada. A migração através do link oferece um tempo de inatividade mínimo em comparação com todas as outras opções de migração disponíveis, fornecendo uma verdadeira migração online para sua Instância Gerenciada SQL.
Os bancos de dados replicados por meio do link entre o SQL Server e a Instância Gerenciada SQL do Azure podem ser usados para vários cenários, como:
- Recuperação de desastres
- Usando os serviços do Azure sem migrar para a nuvem
- Transferindo tarefas de leitura para o Azure
- Migrando para o Azure
- Copiando dados no local
Capacidade de suporte de versão
O link Instância Gerenciada tem suporte na camada de serviço de Finalidade Geral e Crítica de Negócios da Instância Gerenciada SQL do Azure. O recurso de link funciona com as edições Enterprise, Developer e Standard do SQL Server.
A tabela a seguir lista a funcionalidade do recurso de link e as versões mínimas com suporte do SQL Server:
Versão primária inicial | Sistema operacional (SO) | Replicação unidirecional | Opções de recuperação de desastres | Requisito de atualização de serviço |
---|---|---|---|---|
Instância Gerenciada SQL do Azure | Windows Server e Linux | Disponível ao público em geral | Bidirecional |
-
SQL Server 2022 CU10 (KB5031778): Criando um link da Instância Gerenciada SQL do Azure para o SQL Server 2022 1 - SQL Server 2022 CU13 (KB5036432): Falha do link ao usar Transact-SQL - A configuração de um link da Instância Gerenciada SQL do Azure para o SQL Server 2022 só é suportada por instâncias configuradas com a política de atualização do SQL Server 2022 |
SQL Server 2022 (16.x) | Windows Server e Linux | Disponível ao público em geral | Bidirecional | SQL Server 2022 RTM |
SQL Server 2019 (15.x) | Apenas Windows Server | Disponível ao público em geral | Do SQL Server para o SQL MI apenas | SQL Server 2019 CU20 (KB5024276) |
SQL Server 2017 (14.x) | N/A | N/A | N/A | O SQL Server 2017 não é suportado atualmente. |
SQL Server 2016 (13.x) | Apenas Windows Server | Disponível ao público em geral | Do SQL Server para o SQL MI apenas | A compilação mais recente do SQL Server 2016 SP3 e a compilação correspondente do pacote SQL Server 2016 Azure Connect |
SQL Server 2014 (12.x) e inferior | N/A | N/A | N/A | Não há suporte para versões anteriores ao SQL Server 2016. |
1 Embora a criação de um link com o SQL Server 2022 como primário inicial tenha suporte a partir da versão RTM do SQL Server 2022, a criação de um link com a Instância Gerenciada SQL do Azure como primária inicial só terá suporte a partir do SQL Server 2022 CU10. Caso crie o link a partir de uma SQL Managed Instance primária inicial, o downgrade do SQL Server abaixo do CU10 não é suportado enquanto o link estiver ativo, pois pode causar problemas após o failover em qualquer direção.
Não há suporte para versões do SQL Server anteriores ao SQL Server 2016 (SQL Server 2008 - 2014) porque o recurso de link depende da tecnologia de grupo de disponibilidade distribuída, que foi introduzida no SQL Server 2016.
Além da versão suportada do SQL Server, você precisa:
- Conectividade de rede entre sua instância do SQL Server e sua instância gerenciada. Se o SQL Server estiver sendo executado localmente, use um link VPN ou a Rota Expressa do Azure. Se o SQL Server estiver sendo executado em uma máquina virtual (VM) do Azure, implante sua VM na mesma rede virtual que sua instância gerenciada ou use o emparelhamento de rede virtual para conectar as duas sub-redes separadas.
- Uma implantação de Instância Gerenciada SQL do Azure, provisionada para qualquer camada de serviço.
Você também precisará das seguintes ferramentas:
Ferramenta | Observações |
---|---|
O mais recente SSMS | O SQL Server Management Studio (SSMS) é a maneira mais fácil de usar o link Instância Gerenciada, pois fornece assistentes que automatizam a configuração do link. |
O mais recente Az.SQL ou da CLI do Azure | Para configuração de links através de scripts. |
Observação
A função de ligação de instância gerida está disponível em todas as regiões públicas do Azure e em nuvens nacionais ou governamentais.
Como funciona o link
A tecnologia subjacente por trás do recurso de link para a Instância Gerenciada do SQL baseia-se na criação de um grupo de disponibilidade distribuída entre o SQL Server e a Instância Gerenciada do SQL do Azure. A solução suporta sistemas de nó único com ou sem grupos de disponibilidade existentes, ou sistemas de vários nós com grupos de disponibilidade existentes.
A conexão privada, como uma VPN ou a Rota Expressa do Azure, é usada entre uma rede local e o Azure. Se o SQL Server estiver hospedado em uma VM do Azure, o backbone interno do Azure poderá ser usado entre a VM e a instância gerenciada – como, por exemplo, emparelhamento de rede virtual. A confiança entre os dois sistemas é estabelecida usando autenticação baseada em certificado, na qual o SQL Server e a Instância Gerenciada SQL trocam chaves públicas de seus respetivos certificados.
A Instância Gerida SQL do Azure suporta múltiplos links das mesmas ou de várias origens do SQL Server para uma única Instância Gerida SQL do Azure, limitada apenas pelo número de bases de dados que podem ser hospedadas numa instância gerida ao mesmo tempo — até 100 links para os níveis de serviço de Uso Geral e Crítico de Negócios, e 500 para a atualização da camada de Uso Geral de Próxima Geração . Da mesma forma, uma única instância do SQL Server pode estabelecer vários links de sincronização de banco de dados paralelo com várias instâncias gerenciadas, até mesmo para diferentes regiões do Azure, em uma relação um-para-um entre um banco de dados e uma instância gerenciada.
Utilize o link
Para ajudá-lo a configurar o ambiente inicial, revise o guia para preparar seu ambiente do SQL Server para usar o recurso de link com a Instância Gerenciada do SQL:
- Preparar o ambiente para a ligação para SQL Server 2019 ou versões posteriores, ou para SQL Server 2016
- É possível automatizar a preparação do ambiente para o link Instância gerenciada usando um script para download. Consulte o blog Automatização da Configuração de Ligações para saber mais.
Depois de garantir que os requisitos iniciais do ambiente sejam atendidos, você pode criar o link usando o assistente automatizado no SQL Server Management Studio (SSMS) ou pode optar por configurar o link manualmente usando scripts:
Depois que o link for criado, siga as práticas recomendadas para mantê-lo:
Recuperação de desastres
O link Instância gerenciada permite recuperação de desastres, onde, no caso de um desastre, você pode fazer failover manual da carga de trabalho do principal para o secundário. Para começar, reveja o link Recuperação de Desastres com Instância Gerida.
Com o SQL Server 2016 e o SQL Server 2019, o SQL Server é sempre o principal, e o failover para a instância secundária gerenciada é unidirecional. Não há suporte para falha de volta ao SQL Server. No entanto, é possível recuperar seus dados para o SQL Server usando opções de movimentação de dados, como replicação transacional ou exportar um bacpac.
Com o SQL Server 2022, o SQL Server ou a Instância Gerenciada do SQL pode ser o primário inicial e você pode estabelecer o link a partir do SQL Server ou da Instância Gerenciada do SQL. Pode realizar o retorno das suas cargas de trabalho entre os sistemas primário e secundário, alcançando uma verdadeira recuperação bidirecional de desastres.
Ao fazer failback no SQL Server, você pode optar por failback:
- online usando diretamente o link Managed Instance.
- offline fazendo um backup do banco de dados da Instância Gerenciada do SQL e restaurando-o para a instância do SQL Server 2022.
Usar os serviços do Azure
Use o recurso de link para aproveitar os serviços do Azure usando dados do SQL Server sem migrá-los para a nuvem. Os exemplos incluem relatórios, análises, backups, aprendizado de máquina e outros trabalhos que enviam dados para o Azure.
Descarregar cargas de trabalho para o Azure
Você também pode usar o recurso de link para descarregar cargas de trabalho para o Azure. Por exemplo, uma aplicação pode usar o SQL Server para tarefas de leitura/escrita, enquanto descarrega tarefas apenas de leitura para implementações de Instância Gerida SQL em qualquer região do Azure ao redor do mundo. Depois de estabelecer o link, o banco de dados primário no SQL Server é acessível para leitura/gravação, enquanto os dados replicados para a sua instância gerida no Azure são acessíveis apenas para leitura. Essa disposição permite vários cenários em que os bancos de dados replicados em sua instância gerenciada podem ser usados para leitura, expansão e descarregamento de cargas de trabalho somente leitura para o Azure. Sua instância gerenciada, em paralelo, também pode hospedar bancos de dados independentes de leitura/gravação. Isso permite copiar o banco de dados replicado para outro banco de dados de leitura/gravação na mesma instância gerenciada para processamento posterior de dados.
O link tem escopo de banco de dados (um link por um banco de dados), permitindo a consolidação e desconsolidação de cargas de trabalho no Azure. Por exemplo, você pode replicar bancos de dados de várias instâncias do SQL Server para uma única implantação de Instância Gerenciada do SQL no Azure (consolidação) ou pode replicar bancos de dados de uma única instância do SQL Server para várias instâncias gerenciadas por meio de uma relação um-para-um entre um banco de dados e uma instância gerenciada, para qualquer região do Azure em todo o mundo (desconsolidação). A última opção fornece uma maneira eficiente de aproximar rapidamente suas cargas de trabalho de seus clientes em qualquer região do mundo, que você pode usar como réplicas somente leitura.
Migrar para o Azure
O recurso de link também facilita a migração do SQL Server para a Instância Gerenciada do SQL, o que permite:
- A migração com o melhor desempenho e tempo de inatividade mínimo, em comparação com todas as outras soluções disponíveis atualmente.
- Verdadeira migração online para Instância Gerenciada SQL em qualquer camada de serviço.
Como o recurso de link permite uma migração com tempo de inatividade mínimo, pode migrar para a sua instância gerida à medida que mantém a sua carga de trabalho principal online. Embora atualmente seja possível realizar migrações on-line para a camada de serviço de Uso Geral com outras soluções, a funcionalidade de ligação é a única solução que permite migrações on-line verdadeiras para a camada de serviço Business Critical.
Copiar dados no local
Com o SQL Server 2022, você pode estabelecer seu vínculo da Instância Gerenciada do SQL para o SQL Server, desbloqueando cenários adicionais, como a criação de uma réplica de banco de dados quase em tempo real fora do Azure, o teste de planos de continuidade de negócios e o atendimento aos requisitos de conformidade.
Backups automatizados
Depois de configurar um link com a Instância Gerenciada SQL do Azure, os bancos de dados na instância gerenciada são automaticamente copiados para o armazenamento do Azure, independentemente de a Instância Gerenciada do SQL ser ou não primária. Os backups automatizados com o link fazem backups completos e de log de transações, mas não backups diferenciais, o que pode levar a tempos de restauração mais longos.
Você pode reduzir seus custos de gerenciamento e operação locais enquanto aproveita a confiabilidade dos backups do Azure para seus bancos de dados replicados. Em seguida, você pode executar um de restauração point-in-time do banco de dados replicado para qualquer implantação de Instância Gerenciada SQL na mesma região, como com qualquer outro de backup automatizado.
Réplica DR passiva sem licença
Você pode economizar nos custos de licenciamento do vCore se ativar o benefício de failover híbrido para instâncias geridas SQL utilizadas apenas para recuperação de desastres passiva secundária, e que não tenham cargas de trabalho.
Para começar, consulte Réplica passiva sem licença.
Custo-benefício
Se você designar uma réplica de instância gerenciada apenas para recuperação de desastres, a Microsoft não cobrará custos de licenciamento do SQL Server pelos vCores usados pela instância secundária. Lembre-se de que a instância é cobrada numa granularidade horária, e ainda poderá incorrer em custos de licenciamento por uma hora completa caso atualize o benefício de licenciamento durante a hora.
O benefício reflete de forma diferente para o modelo de cobrança pré-pago e o Benefício Híbrido do Azure. Para um modelo de faturamento pré-pago, os vCores são descontados na sua fatura. Se você usar o Benefício Híbrido do Azure para a réplica passiva, o número de vCores que a réplica secundária usa será retornado ao seu pool de licenças.
Por exemplo, como cliente pay-as-you-go, se tiveres 16 vCores atribuídos à instância secundária, um desconto para 16 vCores aparecerá na tua fatura se designares a tua instância secundária para failover híbrido.
Em outro exemplo, se tiveres 16 licenças do Benefício Híbrido do Azure e a tua instância SQL gerida secundária usar 8 vCores, depois de designares a instância secundária para recuperação híbrida, 8 vCores serão devolvidos ao teu pool de licenças para a utilização com outras implantações do SQL do Azure.
Para obter os termos e condições precisos do benefício dos direitos de alternância híbrida, consulte os termos de licenciamento do SQL Server online na seção "SQL Server – Direitos de alternância".
Limitações
Considere as seguintes limitações ao usar o link.
As limitações de suporte de versão incluem:
- Não é possível usar clientes Windows 10 e 11 para hospedar sua instância do SQL Server, porque não é possível habilitar o recurso de grupo de disponibilidade Always On necessário para o link. As instâncias do SQL Server devem ser hospedadas no Windows Server 2012 ou posterior.
- As versões 2008 a 2014 do SQL Server não são suportadas pelo recurso de link, pois o mecanismo SQL dessas versões não tem suporte interno para grupos de disponibilidade distribuídos necessários para o link. Atualize para uma versão mais recente do SQL Server para usar o link.
- A replicação de dados e o failover da Instância Gerenciada SQL para o SQL Server 2022 não são suportados por instâncias configuradas com a política de atualização Always--up-to-date. Sua instância deve ser configurada com a política de atualização do SQL Server 2022 fazer o seguinte:
- Estabeleça um link dede Instância Gerenciada SQL para SQL Server.
- Failover da Instância Gerenciada do SQL para o SQL Server 2022.
- Embora você possa estabelecer um link do SQL Server 2022 para uma instância gerenciada do SQL configurada com o de política de atualização sempreup-todata, após o failover para a Instância Gerenciada do SQL, você não poderá mais replicar dados ou fazer failover para o SQL Server 2022.
As limitações de replicação de dados incluem:
- Somente bancos de dados de usuários podem ser replicados. Não há suporte para replicação de bancos de dados do sistema.
- A solução não replica objetos no nível do servidor, trabalhos de agente ou logons de usuário do SQL Server para a Instância Gerenciada do SQL.
- Para as versões de 2016 e 2019 do SQL Server, a replicação dos bancos de dados de utilizadores de instâncias do SQL Server para implantações de Instância Gerida do SQL é uma forma de o fazer. Os bancos de dados de usuários de implantações de Instância Gerenciada do SQL não podem ser replicados de volta para instâncias do SQL Server. A replicação bidirecional com failback para uma instância do SQL Server está disponível apenas para o SQL Server 2022.
- A configuração de um link de uma Instância Gerenciada do SQL para o SQL Server em um banco de dados não é suportada para bancos de dados de Instância Gerenciada do SQL que já estão vinculados.
As limitações de configuração incluem:
- Se houver várias instâncias do SQL Server num servidor, é possível configurar uma ligação com cada instância, mas cada instância deve ser configurada para usar um endpoint de espelhamento de base de dados separado, com uma porta dedicada para cada instância. Somente a instância padrão deve usar a porta 5022 para o ponto final de espelhamento do banco de dados.
- Apenas um banco de dados pode ser colocado em um único grupo de disponibilidade para um link de Instância Gerenciada. No entanto, é possível replicar vários bancos de dados em uma única instância do SQL Server estabelecendo vários links.
- Uma única instância gerenciada oferece suporte a até 100 links de várias instâncias do SQL Server.
- Um link de Instância Gerenciada pode replicar um banco de dados de qualquer tamanho se ele se encaixar no tamanho de armazenamento escolhido da implantação da Instância Gerenciada SQL de destino.
- A autenticação de link da Instância Gerenciada entre o SQL Server e a Instância Gerenciada do SQL é baseada em certificado e está disponível somente por meio de uma troca de certificados. Não há suporte para o uso da autenticação do Windows para estabelecer o vínculo entre a instância do SQL Server e a instância gerenciada.
- Apenas o ponto de extremidade local de rede virtual é suportado para estabelecer um link com a Instância Gerenciada SQL.
- Não é possível usar pontos de extremidade públicos ou privados para estabelecer o vínculo com a instância gerenciada.
- Os bancos de dados com vários arquivos de log não podem ser replicados, porque a Instância Gerenciada do SQL não oferece suporte a vários arquivos de log.
As limitações de recursos incluem:
- Grupos de failover não são suportados com instâncias que usam o recurso de link. Não é possível estabelecer um link em uma instância gerenciada que faça parte de um grupo de failover e, inversamente, não é possível configurar um grupo de failover em uma instância que tenha um link estabelecido.
- Se você estiver usando o CDC (Change Data Capture), o envio de logs ou um agente de serviços com bancos de dados replicados na instância do SQL Server, quando o banco de dados for migrado para uma implantação de Instância Gerenciada do SQL, durante um failover para o Azure, os clientes precisarão se conectar usando o nome da instância da réplica primária global atual. Essas configurações devem ser reconfiguradas manualmente.
- Se você estiver usando a replicação transacional com um banco de dados em uma instância do SQL Server em um cenário de migração, durante o failover para o Azure, a replicação transacional na implantação da Instância Gerenciada do SQL falhará e deverá ser reconfigurada manualmente.
- Se você estiver usando transações distribuídas com um banco de dados replicado da instância do SQL Server e, em um cenário de migração, na substituição para a nuvem, os recursos do Coordenador de Transações Distribuídas não serão transferidos. Não é possível que o banco de dados migrado se envolva em transações distribuídas com a instância do SQL Server, porque a implantação da Instância Gerenciada do SQL não oferece suporte a transações distribuídas com o SQL Server no momento. Para referência, a Instância Gerenciada SQL hoje oferece suporte a transações distribuídas somente entre outras instâncias gerenciadas. Para obter mais informações, consulte Transações distribuídas entre bancos de dados na nuvem.
- Se você estiver usando a Criptografia de Dados Transparente (TDE) para criptografar bancos de dados do SQL Server, a chave de criptografia de banco de dados do SQL Server precisará ser exportada e carregada no Cofre de Chaves do Azure e você também precisará configurar a opção BYOK TDE na Instância Gerenciada do SQL antes de criar o link.
- Os bancos de dados da Instância Gerenciada SQL criptografados com chaves TDE gerenciadas por serviço não podem ser vinculados ao SQL Server. Você pode vincular um banco de dados criptografado ao SQL Server somente se ele tiver sido criptografado com uma chave gerenciada pelo cliente e o servidor de destino tiver acesso à mesma chave usada para criptografar o banco de dados. Para obter mais informações, consulte Configurar o SQL Server TDE com o Azure Key Vault.
- Não é possível estabelecer um vínculo entre o SQL Server e a Instância Gerenciada do SQL se a funcionalidade usada na instância do SQL Server não tiver suporte na instância gerenciada. Por exemplo:
- Os bancos de dados com tabelas e fluxos de arquivos não podem ser replicados, porque a Instância Gerenciada SQL não oferece suporte a tabelas ou fluxos de arquivos.
- Os bancos de dados que usam In-Memory OLTP só podem ser replicados para a Instância Gerenciada SQL na camada de serviço
Business Critical, porque a camada de serviço de Uso Geral não oferece suporte a In-Memory OLTP. Os bancos de dados com vários arquivos OLTP In-Memory não são suportados pela Instância Gerenciada SQL e não podem ser replicados.
Tentando adicionar uma funcionalidade sem suporte a um banco de dados replicado em:
- O SQL Server 2019 e 2022 falha com um erro.
- O SQL Server 2016 resulta na quebra do link, que precisará ser excluído e recriado.
Para obter a lista completa das diferenças entre o SQL Server e a Instância Gerenciada do SQL, consulte diferenças do T-SQL entre o SQL Server e a Instância Gerenciada do SQL do Azure.
Conteúdo relacionado
Para usar o link:
- Preparar o ambiente para o link da Instância Gerenciada
- Configurar ligação entre o SQL Server e a instância SQL gerida com o SSMS
- Configurar o link entre o SQL Server e a instância gerenciada do SQL com scripts
- Falha no link
- Migrar com o link
- Práticas recomendadas para manter o link
- Solucionar problemas com o link
Para saber mais sobre o link:
Para outros cenários de replicação e migração, considere: