Replicação para o Banco de Dados SQL do Azure
Aplica-se a:Banco de Dados SQL do Azure
Pode configurar uma Base de Dados SQL do Azure para ser o subscritor push de uma topologia de replicação transacional unidirecional ou de instantâneo.
Nota
Este artigo descreve a utilização da replicação transacional na Base de Dados SQL do Azure. Ele não está relacionado à replicação geográfica ativa, um recurso do Banco de Dados SQL do Azure que permite criar réplicas completas legíveis de bancos de dados individuais.
Configurações suportadas
- A Base de Dados SQL do Azure só pode ser o subscritor push de um publicador e distribuidor do SQL Server.
- A instância do SQL Server que funciona como publicador e/ou distribuidor pode ser uma instância do SQL Server em execução no local, uma instância do Azure SQL Managed Instance ou uma instância do SQL Server em execução numa máquina virtual do Azure na cloud.
- A base de dados de distribuição e os agentes de replicação não podem ser colocados numa base de dados na Base de Dados SQL do Azure.
- As replicações de instantâneo e transacional unidirecional não são suportadas. A replicação transacional ponto a ponto e a replicação de intercalação não são suportadas.
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:
A publicação em qualquer Base de Dados SQL do Azure a partir de uma base de dados do SQL Server é suportada nas 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)
Nota
A tentativa de configurar a replicação usando uma versão sem suporte pode resultar em erro número MSSQL_REPL20084 (O processo não pôde se conectar ao assinante.) e MSSQL_REPL40532 (Não é possível abrir o nome> 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 e do SQL Server Data Tools.
Tipos de replicação
Existem diferentes tipos de replicação:
Replicação | Base de Dados SQL do Azure | Instância Gerida do SQL do Azure |
---|---|---|
Transacional Standard | Sim (apenas como assinante) | Sim |
Instantâneo | Sim (apenas como assinante) | Sim |
Replicação de intercalação | No | No |
Ponto a ponto | No | No |
Bidirecional | Não | Sim |
Subscrições atualizáveis | No | No |
Observações
- 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 editor. Não é possível configurar a replicação usando o portal do Azure.
- 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 Banco de Dados SQL do Azure e do SQL Server (local e SQL Server 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
há suporte no sp_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 da 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 as instruções Transact-SQL para criar um push para a assinatura do 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 editor de Instância Gerenciada SQL, você também pode usar um backup de banco de dados para semear o assinante do Banco 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 não são suportadas em subscrições da Base de Dados SQL do Azure:
- Copiar associação de grupos de ficheiros
- Copiar esquemas de partição de tabelas
- Copiar esquemas de partição de índices
- Copiar estatísticas definidas pelo utilizador
- Copiar enlaces predefinidos
- Copiar enlaces de regras
- Copiar índices de texto completo
- Copiar XSD de XML
- Copiar índices XML
- Copiar permissões
- Copiar índices espaciais
- Copiar índices filtrados
- Copiar atributo de compressão de dados
- Copiar atributo de coluna dispersa
- Converter filestream em tipos de dados MAX
- Converter hierarchyid em tipos de dados MAX
- Converter espacial em tipos de dados MAX
- Copiar propriedades expandidas
Limitações a determinar
- Copiar agrupamento
- 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 uma 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).