Visão geral do link da Instância Gerenciada
Aplica-se a: Instância Gerenciada de SQL do Azure
Esse artigo fornece uma visão geral do link da Instância Gerenciada, que permite a replicação de dados quase em tempo real entre o SQL Server e a Instância Gerenciada de 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 obter uma introdução, faça uma revisão da documentação sobre preparar o ambiente para o link.
Visão geral
O link Instância Gerenciada usa grupos de disponibilidade distribuídos para expandir seu conjunto de dados de maneira segura, replicando dados quase em tempo real do SQL Server hospedado em qualquer lugar para a Instância Gerenciada de SQL do Azure, ou da Instância Gerenciada de SQL do Azure para o SQL Server 2022 hospedado em qualquer lugar.
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 aproveitar os benefícios do Azure sem migrar o acervo de dados do SQL Server para a nuvem.
Embora o link dê 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 do SQL, ou replicar o mesmo banco de dados para várias instâncias gerenciadas do SQL, configurando vários links, um para cada par de banco de dados e instância gerenciada.
Atualmente, o recurso de link oferece a seguinte funcionalidade:
- Replicação unidirecional a partir das versões do SQL Server 2016 e 2019: use a funcionalidade de link para replicar dados unidirecionais de uma instância SQL para uma Instância Gerenciada de SQL do Azure. Embora você possa fazer failover manualmente para sua instância gerenciada no caso de um desastre, isso interrompe o link e não há suporte para failback.
- Recuperação de desastre (SQL Server 2022): use o recurso de link para replicar dados entre o SQL Server 2022 e a Instância Gerenciada de SQL, faça failover manualmente para sua secundária durante um desastre, e faça failback para a sua primária depois de atenuar o desastre. O SQL Server e a Instância Gerenciada de SQL podem ser a primária inicial.
Você pode continuar executando o link pelo tempo necessário, por meses e até anos por 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 aprimorada. A migração por meio do link oferece 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 de SQL.
Os bancos de dados que são replicados por meio do link entre o SQL Server e a Instância Gerenciada de SQL do Azure podem ser usados para vários cenários, como:
- Recuperação de desastre
- Usar os serviços do Azure sem migrar para a nuvem
- Descarregar cargas de trabalho somente leitura para o Azure
- Migrar para o Azure
- Copiando dados no local
Suporte de versões
Há suporte para o link de Instância Gerenciada na camada de serviço Uso Geral e Comercialmente Crítico da Instância Gerenciada do Banco de Dados SQL do Azure. O recurso de link funciona com as edições Enterprise, Developer e Standard do SQL Server.
A seguinte tabela lista a funcionalidade do recurso de link e as versões mínimas do SQL Server com suporte:
Versão primária inicial | OS (sistema operacional) | Replicação unidirecional | Opções de recuperação de desastre | Requisito de atualização de manutenção |
---|---|---|---|---|
Instância Gerenciada do Azure SQL | Windows Server e Linux | Disponível para o público geral | Bi-direcional | - Atualização cumulativa 10 do SQL Server 2022 (KB5031778): criar um link da Instância Gerenciada de SQL do Azure para o SQL Server 2022 1 - Atualização cumulativa 13 do SQL Server 2022 (KB5036432): possibilidade de fazer failover do link ao usar Transact-SQL - A configuração de um link da Instância Gerenciada de SQL do Azure para o SQL Server 2022 tem suporte somente para instâncias configuradas com a política de atualizações do SQL Server 2022 |
SQL Server 2022 (16.x) | Windows Server e Linux | Disponível para o público geral | Bi-direcional | SQL Server 2022 RTM |
SQL Server 2019 (15.x) | Windows Server apenas | Disponível para o público geral | Do SQL Server para o SQL MI somente | SQL Server CU20 2019 (KB5024276) |
SQL Server 2017 (14.x) | N/D | N/D | N/D | No momento, não há suporte para o SQL Server 2017. |
SQL Server 2016 (13.x) | Windows Server apenas | Disponível para o público geral | Do SQL Server para o SQL MI somente | A compilação mais recente do SQL Server 2016 SP3 e a compilação correspondente do pacote do SQL Server 2016 Azure Connect |
SQL Server 2014 (12.x) e versões anteriores | N/D | N/D | N/D | 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 de SQL do Azure como primário inicial tem suporte somente a partir da atualização cumulativa 10 do SQL Server 2022. Se você criar o link a partir de uma Instância Gerenciada de SQL como primário inicial, o downgrade do SQL Server abaixo de CU10 não terá suporte enquanto o link estiver ativo, pois pode causar problemas após o failover em qualquer direção.
Não há suporte para as versões do SQL Server anteriores à 2016 (SQL Server 2008 – 2014), pois o recurso de link depende da tecnologia de grupo de disponibilidade distribuído, que foi introduzida no SQL Server 2016.
Além da versão com suporte do SQL Server, você precisará do seguinte:
- Conectividade de rede entre sua instância do SQL Server e sua instância gerenciada. Se o SQL Server estiver em execução no local, use um link VPN ou o Azure ExpressRoute. Se o SQL Server estiver em execução em uma VM (máquina virtual) 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 da Instância Gerenciada de SQL do Azure provisionada para qualquer nível de serviço.
As seguintes ferramentas também são necessárias:
Ferramenta | Observações |
---|---|
SSMS 20.2 ou versões posteriores | O SSMS (SQL Server Management Studio) é a maneira mais fácil de usar o link da Instância Gerenciada, pois fornece assistentes que automatizam a configuração do link. |
Az.SQL 3.9.0 ou posterior | Um módulo do PowerShell é necessário para as etapas de configuração manual. |
Observação
O recurso de link da Instância Gerenciada está disponível em todas as regiões públicas do Azure e nas nuvens nacionais ou governamentais.
Como o link funciona
A tecnologia subjacente por trás do recurso de link da Instância Gerenciada de SQL é baseada na criação de um grupo de disponibilidade distribuído entre o SQL Server e a Instância Gerenciada de SQL do Azure. A solução dá suporte a sistemas de nó único com ou sem grupos de disponibilidade existentes ou sistemas de vários nós com grupos de disponibilidade existentes.
A conectividade privada, como um VPN ou Azure ExpressRoute, é 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 o emparelhamento de rede virtual. A confiança entre os dois sistemas é estabelecida usando a autenticação baseada em certificado, no qual o SQL Server e a Instância Gerenciada de SQL trocam as chaves públicas de seus respectivos certificados.
A Instância Gerenciada de SQL do Azure fornece suporte para diversos links de uma mesma ou de várias origens de SQL Server para uma única Instância Gerenciada de SQL do Azure. Esse suporte é limitado somente pelo número de bancos de dados que podem ser hospedados em uma instância gerenciada ao mesmo tempo, sendo até 100 links para as camadas de serviço de Uso Geral e Comercialmente Crítico, e 500 para a atualização da camada de Uso Geral da Próxima Geração. De forma semelhante, uma única instância do SQL Server pode estabelecer diversos links de sincronização de banco de dados em paralelo com várias instâncias gerenciadas, inclusive em diferentes regiões do Azure, em uma relação um-para-um entre um banco de dados e uma instância gerenciada.
Usar o link
Para ajudar você 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 de SQL:
- Preparar o ambiente para o link para o SQL Server 2019 e posterior, ou para o SQL Server 2016
- É possível automatizar a preparação do ambiente para o link Instância Gerenciada usando um script para download. Examine o Blog de configuração de link de automação para saber mais.
Depois de garantir que os requisitos iniciais de ambiente foram atendidos, você pode criar o link usando o assistente automatizado no SSMS (SQL Server Management Studio) ou pode optar por configurar o link manualmente usando scripts:
Depois de criar o link, siga as práticas recomendadas para manter o link:
Recuperação de desastre
O link da Instância Gerenciada possibilita a recuperação de desastre, onde, em caso de desastre, você pode fazer failover manualmente da carga de trabalho do primário para o secundário. Para começar, consulte Recuperação de desastres com o link da Instância Gerenciada.
Com o SQL Server 2016 e o SQL Server 2019, o primário é sempre o SQL Server e o failover para a instância gerenciada secundária é unidirecional. Não há suporte para a realização de failback para o SQL Server. Porém, é possível recuperar os seus dados para o SQL Server ao usar opções de movimentação de dados, como replicação transacional ou exportar um arquivo bacpac.
Com o SQL Server 2022, o SQL Server ou a Instância Gerenciada de SQL podem ser o primário inicial, e você pode estabelecer o link a partir do SQL Server ou da Instância Gerenciada de SQL. Você pode fazer failback de suas cargas de trabalho entre o primário e o secundário, alcançando uma verdadeira recuperação de desastres bidirecional.
Ao fazer o failback para o SQL Server, você pode escolher fazer o failback:
- online, ao usar diretamente o link da Instância Gerenciada.
- offline ao realizar um backup do banco de dados da Instância Gerenciada de SQL e restaurá-lo para a instância do SQL Server 2022.
Usar serviços do Azure
Use o recurso de link para aproveitar os serviços do Azure usando dados do SQL Server sem migrar 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 no Azure
Você também pode usar o recurso de link para descarregar cargas de trabalho no Azure. Por exemplo, um aplicativo pode usar o SQL Server para cargas de trabalho de leitura/gravação, ao passo que descarrega cargas de trabalho somente leitura nas implantações da Instância Gerenciada de SQL em qualquer região do Azure em todo o mundo. Depois que o link for estabelecido, o banco de dados primário no SQL Server será acessível para leitura/gravação, enquanto os dados replicados para sua instância gerenciada no Azure são acessíveis como somente leitura. Esse arranjo permite vários cenários em que os bancos de dados replicados na sua instância gerenciada podem ser usados para a expansão de leitura e o descarregamento de cargas de trabalho somente leitura no Azure. Em paralelo, sua instância gerenciada também pode hospedar bancos de dados de leitura/gravação independentes. Isso permite copiar o banco de dados replicado em outro banco de dados de leitura/gravação na mesma instância gerenciada para processamento de dados adicionais.
O link tem o escopo do banco de dados (um link por um banco de dados), permitindo a consolidação e a não consolidaçã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 da Instância Gerenciada de SQL no Azure (consolidação) ou pode replicar bancos de dados de uma única Instância de SQL Server para várias instâncias gerenciadas por meio de uma relação de 1 para 1 entre um banco de dados e uma instância gerenciada e qualquer uma das regiões do Azure em todo o mundo (não consolidação). A não consolidação fornece uma maneira eficiente de rapidamente levar suas cargas de trabalho para seus clientes em qualquer região do mundo e você pode usá-las 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 de SQL, permitindo:
- A migração com melhor desempenho em tempo de inatividade comparado a todas as outras soluções disponíveis hoje.
- Migração online verdadeira para a Instância Gerenciada de SQL em qualquer camada de serviço.
Como o recurso de link permite migração com tempo de inatividade mínimo, você pode migrar para sua instância gerenciada enquanto mantém sua carga de trabalho principal online. Embora atualmente seja possível realizar migrações online para a camada de serviço Uso Geral com outras soluções, o recurso de link é a única solução que permite verdadeiras migrações online para a camada Comercialmente Crítico.
Copiar Dados no local
Com o SQL Server 2022, você pode estabelecer seu link da Instância Gerenciada de SQL para o SQL Server, desbloqueando cenários adicionais, como criar uma réplica de banco de dados quase em tempo real fora do Azure, testar planos de continuidade dos negócios e atender aos requisitos de conformidade.
Backups automatizados
Depois de configurar uma vinculação com a Instância Gerenciada de SQL do Azure, o backup dos bancos de dados na instância gerenciada é feito automaticamente no armazenamento do Azure, independentemente de a Instância Gerenciada de SQL ser primária ou não. Os backups automatizados com a vinculação 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 o gerenciamento local e os custos de operação, aproveitando a confiabilidade dos backups do Azure para seus bancos de dados replicados. Em seguida, você pode executar uma restauração pontual do banco de dados replicado para qualquer implantação da Instância Gerenciada de SQL na mesma região, como acontece com qualquer outro backup automatizado.
Réplica de DR passiva sem licença
Você pode poupar nos custos de licenciamento do vCore se ativar o benefício de failover híbrido para recuperação de desastre passiva secundária apenas em instâncias gerenciadas por SQL que não têm cargas de trabalho.
Para começar, consulte Réplica passiva sem licença.
Benefício de custo
Se você designar uma réplica de instância gerenciada apenas para recuperação de desastre, a Microsoft não cobrará os custos de licenciamento do SQL Server pelos vCores usados pela instância secundária. Lembre-se de que a instância é cobrada por uma granularidade de hora, e você ainda pode ser cobrado pelos custos de licenciamento por uma hora inteira se atualizar 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 cobrança 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 é retornado ao seu pool de licenciamento.
Por exemplo, como um cliente pré-pago, se você tiver 16 vCores atribuídos à instância secundária, um desconto de 16 vCores aparecerá em sua fatura se você designar sua instância secundária para failover híbrido.
Em outro exemplo, se você tiver 16 licenças de Benefício Híbrido do Azure e sua Instância Gerenciada de SQL secundária usar 8 vCores, depois que você designar a instância secundária para failover híbrido, 8 vCores são devolvidos ao seu pool de licença para usar com com outras implantações do SQL do Azure.
Para obter termos e condições precisos do benefício dos direitos de failover híbrido, consulte os termos de licenciamento do SQL Server online na seção "SQL Server: direitos de failover".
Limitações
Considere as limitações a seguir ao usar o link.
As limitações de capacidade de suporte de versões incluem:
- Você não pode usar clientes Windows 10 e 11 para hospedar sua instância do SQL Server, pois 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.
- Não há suporte para as versões do SQL Server 2008 a 2014 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.
- Não há suporte para a duplicação de dados e para o failover da Instância Gerenciada de SQL para o SQL Server 2022 por parte de instâncias configuradas com a política de atualizações Sempre atualizado. Sua instância deve estar configurada com a política de atualizações do SQL Server 2022 para realizar as tarefas apresentadas a seguir:
- Estabelecer um link da Instância Gerenciada de SQL para o SQL Server.
- Fazer failover da Instância Gerenciada de SQL para o SQL Server 2022.
- Embora você possa estabelecer uma vinculação do SQL Server 2022 para uma Instância Gerenciada de SQL configurada com a política de atualização Sempre atualizado, após o failover para a Instância Gerenciada de SQL, você não poderá mais duplicar dados nem fazer failback 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 a replicação de bancos de dados do sistema.
- A solução não replica objetos de nível de servidor, trabalhos de agente ou logons de usuário de SQL Server para a Instância Gerenciada de SQL.
- No SQL Server versões 2016 e 2019, a replicação dos bancos de dados de usuário das instâncias do SQL Server para as implantações da Instância Gerenciada de SQL é unidirecional. Os bancos de dados de usuário das implantações da Instância Gerenciada de SQL não podem ser replicados de volta para as instâncias do SQL Server. A replicação bidirecional com failback para a Instância do SQL Server só está disponível para o SQL Server 2022.
- A configuração de um link da Instância Gerenciada de SQL para o SQL Server em um banco de dados não tem suporte para bancos de dados da Instância Gerenciada de SQL que já estão vinculados.
As limitações de configuração incluem:
- Se houver várias instâncias do SQL Server em um servidor, será possível configurar um link com cada instância, mas cada instância precisa ser configurada para usar um ponto de extremidade de espelhamento de banco de dados separado com uma porta dedicada por instância. Somente a instância padrão deve usar a porta 5022 para o ponto de extremidade de espelhamento de banco de dados.
- Somente um banco de dados pode ser colocado em um só grupo de disponibilidade por link da 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 dá suporte a até 100 links de várias instâncias do SQL Server.
- Um link da Instância Gerenciada pode replicar um banco de dados de qualquer tamanho se ele se ajustar ao tamanho do armazenamento escolhido da implantação da Instância Gerenciada de SQL de destino.
- A autenticação do link da Instância Gerenciada entre o SQL Server e a Instância Gerenciada de SQL é baseada em certificado, 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 link entre a instância do SQL Server e a instância gerenciada.
- Apenas o ponto de extremidade de VNet local tem suporte para estabelecimento de um link com a Instância Gerenciada de SQL.
- Não é possível usar um ponto de extremidade público para estabelecer o link com a instância gerenciada.
- Bancos de dados com vários arquivos de log não podem ser replicados, pois a Instância Gerenciada de SQL não dá suporte a vários arquivos de log.
As limitações de recursos incluem:
- Não há suporte para grupos de failover 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, por outro lado, não é possível configurar um grupo de failover automático em uma instância que tenha um link estabelecido.
- Se você estiver usando a CDA (captura de dados de alterações), 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 da Instância Gerenciada de 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 SQL Managed Instance 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 transição para a nuvem, as funcionalidades do Coordenador de Transações Distribuídas não serão transferidas. Não é possível que o banco de dados migrado se envolva em transações distribuídas com a instância do SQL Server, pois a implantação da Instância Gerenciada de SQL não oferece suporte a transações distribuídas com o SQL Server no momento. Para referência, a Instância Gerenciada de SQL hoje oferece suporte a transações distribuídas apenas entre outras instâncias gerenciadas. Para obter mais informações, confira Transações distribuídas entre bancos de dados na nuvem.
- Se você estiver usando o TDE (Transparent Data Encryption) para criptografar bancos de dados SQL Server, a chave de criptografia de banco de dados do SQL Server precisará ser exportada e carregada no Azure Key Vault. Você também precisará configurar a opção TDE BYOK na Instância Gerenciada de SQL antes de criar o link.
- Os bancos de dados da Instância Gerenciada de SQL criptografados com chaves TDE gerenciadas pelo serviço não podem ser vinculados ao SQL Server. Você só poderá vincular um banco de dados criptografado no SQL Server 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, confira Configurar SQL Server TDE com o Azure Key Vault.
- Você não pode estabelecer um link entre o SQL Server e a Instância Gerenciada de SQL se a funcionalidade usada na instância do SQL Server não tiver suporte na instância gerenciada. Por exemplo:
- Bancos de dados com tabelas de arquivos e fluxos de arquivos não podem ser replicados, pois a Instância Gerenciada de SQL não dá suporte a tabelas de arquivos ou fluxos de arquivos.
- Os bancos de dados que usam OLTP In-Memory podem ser replicados apenas para a Instância Gerenciada de SQL na camada de serviço Comercialmente Crítico, pois a camada de serviço Uso Geral não dá suporte a OLTP In-Memory. Bancos de dados com vários arquivos OLTP in-memory não têm suporte na Instância Gerenciada de SQL e não podem ser replicados.
Ao tentar adicionar uma funcionalidade sem suporte a um banco de dados replicado no:
- SQL Server 2019 e 2022, ocorre um erro.
- SQL Server 2016, resulta em link corrompido, que precisa ser excluído e recriado.
Para ver a lista completa das diferenças entre o SQL Server e a Instância Gerenciada de SQL, confira Diferenças de T-SQL entre o SQL Server e a Instância Gerenciada de SQL do Azure.
Conteúdo relacionado
Para usar o link:
- Prepare environment for the Managed Instance link
- Configurar o link entre o SQL Server e a instância gerenciada do SQL com o SSMS
- Configurar o link entre o SQL Server e a instância gerenciada de SQL com os scripts
- Fazer failover do link
- Migrar com o link
- Práticas recomendadas para manter o link
Para saber mais sobre o link:
Para outros cenários de replicação e migração, considere: