Replicação para o Banco de Dados SQL do Azure
Aplica-se a:Banco de Dados SQL do Azure
Banco de Dados SQL no Fabric
Você pode configurar o Banco de Dados SQL do Azure ou o Banco de Dados SQL do Fabric como o subscritor de envio em uma topologia de replicação transacional ou de instantâneos unidirecional a partir do SQL Server e da Instância Gerida do Azure SQL.
Observação
Este artigo descreve o uso de de replicação transacional para transferir dados para o Banco de Dados SQL do Azure ou para o Banco de Dados SQL do Fabric. Este artigo aplica-se igualmente à Base de Dados SQL do Azure e à Base de Dados SQL de Malha, salvo indicação em contrário.
Não está relacionado com a replicação geográfica ativa , uma funcionalidade da Base de Dados SQL do Azure que lhe permite criar réplicas completas legíveis de bases de dados individuais.
Configurações suportadas
- O Banco de Dados SQL do Azure ou o Banco de Dados SQL do Fabric podem ser apenas o assinante por push de um editor e distribuidor do SQL Server.
- A instância do SQL Server atuando como editor e/ou distribuidor pode ser uma instância do SQL Server executada localmente, uma Instância Gerida do Azure SQL, ou uma instância do SQL Server em execução numa máquina virtual do Azure na nuvem.
- O banco de dados de distribuição e os agentes de replicação não podem ser colocados em um banco de dados no Banco de Dados SQL do Azure.
- Tanto o snapshot quanto a replicação transacional unidirecional são suportados. Não são suportadas a replicação transacional ponto a ponto e a replicação de mesclagem.
Versões
Para replicar com êxito para um banco de dados no Banco de Dados SQL do Azure, os editores e distribuidores do SQL Server devem estar usando (pelo menos) uma das seguintes versões:
Observação
A tentativa de configurar a replicação usando uma versão não suportada pode resultar no número de erro MSSQL_REPL20084 (O processo não pôde se conectar ao assinante.) e MSSQL_REPL40532 (Não é possível abrir o nome do <do servidor> solicitado pelo login. O login falhou.).
Para usar todos os recursos do Banco de Dados SQL do Azure, você deve estar usando as versões mais recentes do SQL Server Management Studio (SSMS) e SQL Server Data Tools.
A publicação em qualquer Banco de Dados SQL do Azure a partir de um banco de dados do SQL Server é suportada pelas seguintes versões do SQL Server:
- SQL Server 2016 e superior
- SQL Server 2014 RTM CU10 (12.0.4427.24) ou SP1 CU3 (12.0.2556.4)
- SQL Server 2012 SP2 CU8 (11.0.5634.1) ou SP3 (11.0.6020.0)
A publicação no banco de dados SQL do Fabric a partir de um banco de dados do SQL Server é suportada pelas seguintes versões do SQL Server:
- SQL Server 2022 RTM CU12 e superior
Tipos de replicação
Existem diferentes tipos de replicação:
Replicação | Banco de Dados SQL do Azure | Instância Gerenciada SQL do Azure |
---|---|---|
Transacional Padrão | Sim (apenas como assinante) | Sim |
Instantâneo | Sim (apenas como assinante) | Sim |
Replicação por mesclagem | Não | Não |
ponto a ponto | Não | Não |
bidirecional | Não | Sim |
Subscrições atualizáveis | Não | Não |
Comentários
- Somente há suporte para assinaturas push do Banco de Dados SQL do Azure.
- A replicação pode ser configurada usando o SQL Server Management Studio ou executando instruções Transact-SQL no publicador. Não é possível configurar a replicação usando o portal do Azure.
- Para autenticar:
- Servidores SQLAzure-Arc habilitados permitem que a replicação use a autenticação do Microsoft Entra ID .
- A replicação pode usar a autenticação do Microsoft Entra ID com uma entidade de serviço para se conectar ao Fabric SQL database.
- A replicação só pode usar logons de autenticação do SQL Server para se conectar ao Banco de Dados SQL do Azure.
- As tabelas replicadas devem ter uma chave primária.
- Você deve ter uma assinatura existente do Azure.
- O assinante do Banco de Dados SQL do Azure pode estar em qualquer região.
- Uma única publicação no SQL Server pode dar suporte a assinantes do Azure SQL Database e do SQL Server (no local e em uma máquina virtual do Azure).
- O gerenciamento, o monitoramento e a solução de problemas da replicação devem ser executados a partir do SQL Server em vez do Banco de Dados SQL do Azure.
- Somente
@subscriber_type = 0
é suportado nosp_addsubscription
para o Banco de dados SQL. - A Base de Dados SQL do Azure não suporta replicação bidirecional, imediata, atualizável ou ponto a ponto.
Arquitetura de replicação
Cenários
Cenário típico de replicação
- Crie uma publicação de replicação transacional em um banco de dados do SQL Server.
- No SQL Server, use o Assistente para Nova Assinatura ou Transact-SQL para criar uma assinatura push para o Banco de Dados SQL do Azure.
- Com bancos de dados únicos e agrupados no Banco de Dados SQL do Azure, o conjunto de dados inicial é um instantâneo criado pelo Snapshot Agent e distribuído e aplicado pelo Distribution Agent. Com um publicador de Instância Gerenciada SQL, pode também usar um backup de base de dados para inicializar o assinante da Base de Dados SQL do Azure.
Cenário de migração de dados
- Use a replicação transacional para replicar dados de um banco de dados do SQL Server para o Banco de Dados SQL do Azure.
- Redirecionar o cliente ou os aplicativos de camada intermediária para atualizar a cópia do banco de dados.
- Pare de atualizar a versão do SQL Server da tabela e remova a publicação.
Limitações
As seguintes opções de replicação não são suportadas pela Base de Dados SQL do Azure:
- Copiar associação de grupos de arquivos
- Copiar esquemas de particionamento de tabelas
- Copiar esquemas de particionamento de índice
- Copiar estatísticas definidas pelo usuário
- Copiar ligações padrão
- Copiar associações de regras
- Copiar índices de texto completo
- Copiar XML XSD
- Copiar índices XML
- Permissões de cópia
- Copiar índices espaciais
- Copiar índices filtrados
- Copiar atributo de compactação de dados
- Copiar atributo de coluna esparsa
- Converter fluxo de ficheiros para tipos de dados MAX
- Converter hierarchyid em tipos de dados MAX
- Converter tipos de dados espaciais para tipos de dados MAX
- Copiar propriedades estendidas
Limitações a determinar
- Agrupamento de cópias
- Execução numa transação serializada do SP
Exemplos
Crie uma publicação e uma assinatura push. Para mais informações, consulte:
- Criar uma publicação
- Crie um de Assinatura por Push usando o nome do servidor como o assinante (por exemplo, N'azuresqldbdns.database.windows.net') e o nome do Banco de Dados SQL do Azure como o banco de dados de destino (por exemplo, AdventureWorks).