Replica nel database SQL di AzureReplication to Azure SQL Database

SI APPLICA A: Database SQL di Azure

È possibile configurare un database SQL di Azure come Sottoscrittore push in una topologia di replica snapshot o transazionale unidirezionale.You can configure an Azure SQL Database as the push subscriber in a one-way transactional or snapshot replication topology.

Nota

Questo articolo descrive l'uso della replica transazionale nel database SQL di Azure.This article describes the use of transactional replication in Azure SQL Database. Non è correlato alla replica geografica attiva, una funzionalità del database SQL di Azure che consente di creare repliche leggibili complete dei singoli database.It is unrelated to active geo-replication, an Azure SQL Database feature that allows you to create complete readable replicas of individual databases.

Configurazioni supportateSupported configurations

VersioniVersions

Per eseguire correttamente la replica in un database nel database SQL di Azure, SQL Server gli autori e i distributori devono usare almeno una delle versioni seguenti:To successfully replicate to a database in Azure SQL Database, SQL Server publishers and distributors must be using (at least) one of the following versions:

La pubblicazione in un database SQL di Azure da un database di SQL Server è supportata dalle seguenti versioni di SQL Server:Publishing to any Azure SQL Database from a SQL Server database is supported by the following versions of SQL Server:

Nota

Il tentativo di configurare la replica con una versione non supportata può causare il numero di errore MSSQL_REPL20084 (il processo non è riuscito a connettersi al Sottoscrittore) e MSSQL_REPL40532 (non è possibile aprire <name> il server richiesto dall'account di accesso.Attempting to configure replication using an unsupported version can result in error number MSSQL_REPL20084 (The process could not connect to Subscriber.) and MSSQL_REPL40532 (Cannot open server <name> requested by the login. Accesso non riuscito).The login failed.).

Per usare tutte le funzionalità del database SQL di Azure, è necessario usare le versioni più recenti di SQL Server Management Studio e SQL Server Data Tools.To use all the features of Azure SQL Database, you must be using the latest versions of SQL Server Management Studio and SQL Server Data Tools.

Tipi di replicaTypes of replication

Esistono diversi tipi di replica:There are different types of replication:

ReplicaReplication Database SQL di AzureAzure SQL Database Istanza gestita di SQL di AzureAzure SQL Managed Instance
Transazionale standardStandard Transactional Sì (solo come sottoscrittore)Yes (only as subscriber) Yes
SnapshotSnapshot Sì (solo come sottoscrittore)Yes (only as subscriber) Yes
Replica di tipo mergeMerge replication NoNo NoNo
Peer-to-peerPeer-to-peer NoNo NoNo
BidirezionaleBidirectional NoNo Yes
Sottoscrizioni aggiornabiliUpdatable subscriptions NoNo NoNo
     

OsservazioniRemarks

  • Sono supportate solo le sottoscrizioni push nel database SQL di Azure.Only push subscriptions to Azure SQL Database are supported.
  • La replica può essere configurata usando SQL Server Management Studio o eseguendo istruzioni Transact-SQL sul database di pubblicazione.Replication can be configured by using SQL Server Management Studio or by executing Transact-SQL statements on the publisher. Non è possibile configurare la replica tramite il portale di Azure.You cannot configure replication by using the Azure portal.
  • La replica può usare solo account di accesso con autenticazione SQL Server per connettersi al database SQL di Azure.Replication can only use SQL Server authentication logins to connect to Azure SQL Database.
  • Le tabelle replicate devono avere una chiave primaria.Replicated tables must have a primary key.
  • È necessario avere una sottoscrizione di Azure.You must have an existing Azure subscription.
  • Il Sottoscrittore del database SQL di Azure può trovarsi in qualsiasi area.The Azure SQL Database subscriber can be in any region.
  • Una singola pubblicazione in SQL Server può supportare sia sottoscrittori di database SQL di Azure sia sottoscrittori di SQL Server (in locale e in una macchina virtuale di Azure).A single publication on SQL Server can support both Azure SQL Database and SQL Server (on-premises and SQL Server in an Azure virtual machine) subscribers.
  • La gestione della replica, il monitoraggio e la risoluzione dei problemi devono essere eseguiti da SQL Server piuttosto che dal database SQL di Azure.Replication management, monitoring, and troubleshooting must be performed from SQL Server rather than Azure SQL Database.
  • È supportato solo @subscriber_type = 0 in sp_addsubscription per il database SQL.Only @subscriber_type = 0 is supported in sp_addsubscription for SQL Database.
  • Il database SQL di Azure non supporta la replica bidirezionale, immediata, aggiornabile o peer-to-peer.Azure SQL Database does not support bi-directional, immediate, updatable, or peer-to-peer replication.

Architettura della replicaReplication Architecture

Il diagramma illustra l'architettura di replica con il database SQL di Azure, che contiene diversi cluster di sottoscrittori in aree diverse e macchine virtuali di Azure locali, che contiene un server di pubblicazione, un eseguibile Logread e i file eseguibili del server di distribuzione che si connettono a cluster remoti.

ScenariScenarios

Scenario di replica tipicoTypical Replication Scenario

  1. Creazione di una pubblicazione di replica transazionale in un database SQL Server.Create a transactional replication publication on a SQL Server database.
  2. In SQL Server usare la creazione guidata nuova sottoscrizione o istruzioni Transact-SQL per creare un push nella sottoscrizione al database SQL di Azure.On SQL Server use the New Subscription Wizard or Transact-SQL statements to create a push to subscription to Azure SQL Database.
  3. Con i database singoli e i database in pool nel database SQL di Azure, il set di dati iniziale è uno snapshot creato dall'agente di snapshot e distribuito e applicato dall'agente di distribuzione.With single and pooled databases in Azure SQL Database, the initial data set is a snapshot that is created by the Snapshot Agent and distributed and applied by the Distribution Agent. Con un server di pubblicazione SQL Istanza gestita è anche possibile usare un backup del database per eseguire il seeding del sottoscrittore del database SQL di Azure.With a SQL Managed Instance publisher, you can also use a database backup to seed the Azure SQL Database subscriber.

Scenario di migrazione dei datiData migration scenario

  1. Usare la replica transazionale per replicare i dati da un database di SQL Server al database SQL di Azure.Use transactional replication to replicate data from a SQL Server database to Azure SQL Database.
  2. Reindirizzare le applicazioni client o di livello intermedio per aggiornare la copia del database.Redirect the client or middle-tier applications to update the database copy.
  3. Interrompere l'aggiornamento della versione SQL Server della tabella e rimuovere la pubblicazione.Stop updating the SQL Server version of the table and remove the publication.

LimitazioniLimitations

Le opzioni seguenti non sono supportate per le sottoscrizioni del database SQL di Azure:The following options are not supported for Azure SQL Database subscriptions:

  • Copia associazioni filegroupCopy file groups association
  • Copia schemi di partizionamento delle tabelleCopy table partitioning schemes
  • Copia schemi di partizionamento dell'indiceCopy index partitioning schemes
  • Copia statistiche definite dall'utenteCopy user defined statistics
  • Copia associazioni predefiniteCopy default bindings
  • Copia associazioni regolaCopy rule bindings
  • Copia indici full-textCopy fulltext indexes
  • Copia XSD per colonna XMLCopy XML XSD
  • Copia indici XMLCopy XML indexes
  • Copia autorizzazioniCopy permissions
  • Copia indici spazialiCopy spatial indexes
  • Copia indici filtratiCopy filtered indexes
  • Copia attributo di compressione datiCopy data compression attribute
  • Copia attributo di colonna di tipo sparseCopy sparse column attribute
  • Converti tipo FILESTREAM in tipi di dati MAXConvert filestream to MAX data types
  • Converti tipo hierarchyId in tipi di dati MAXConvert hierarchyid to MAX data types
  • Converti tipo spaziale in tipi di dati MAXConvert spatial to MAX data types
  • Copia proprietà esteseCopy extended properties

Limitazioni da determinareLimitations to be determined

  • Copia regole di confrontoCopy collation
  • Esecuzione in una transazione serializzata della stored procedureExecution in a serialized transaction of the SP

EsempiExamples

Creare una pubblicazione e una sottoscrizione push.Create a publication and a push subscription. Per altre informazioni, vedere:For more information, see:

Vedere ancheSee Also