Replica in database SQL di Azure

Si applica a:database SQL di Azure

È possibile configurare un database SQL di Azure come sottoscrittore push in una topologia di replica transazionale o snapshot unidirezionale.

Nota

Questo articolo descrive l'uso della replica transazionale nel database SQL di Azure. Non è correlato alla replica geografica attiva, una funzionalità di database SQL di Azure che consente di creare repliche leggibili complete di singoli database.

Configurazioni supportate

Versioni

Per eseguire correttamente la replica in un database in database SQL di Azure, i server di pubblicazione e i database di distribuzione di SQL Server devono usare (almeno) una delle versioni seguenti:

La pubblicazione in un database SQL di Azure da un database di SQL Server è supportata dalle versioni seguenti di SQL Server:

Nota

Se si cerca di configurare la replica usando una versione non supportata, potrebbero essere generati gli errori MSSQL_REPL20084 (Il processo non è riuscito a connettersi al sottoscrittore) e MSSQL_REPL40532 (Impossibile aprire il server<nome> richiesto dall'account di accesso. L'accesso è fallito.).

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.

Tipi di replica

Esistono diversi tipi di replica:

Replica Database SQL di Azure Istanza gestita di SQL di Azure
Transazionale standard Sì (solo come sottoscrittore)
Snapshot Sì (solo come sottoscrittore)
Replica di tipo merge No No
Peer-to-peer No No
Bidirezionale No
Sottoscrizioni aggiornabili No Numero

Osservazioni:

  • Sono supportate solo le sottoscrizioni push nel database SQL di Azure.
  • La replica può essere configurata usando SQL Server Management Studio o eseguendo istruzioni Transact-SQL sul database di pubblicazione. Non è possibile configurare la replica tramite il portale di Azure.
  • La replica può usare solo account di accesso per l'autenticazione di SQL Server per connettersi a un database SQL di Azure.
  • Le tabelle replicate devono avere una chiave primaria.
  • È necessario avere una sottoscrizione di Azure.
  • L'abbonato del database SQL di Azure può trovarsi in qualsiasi area.
  • 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).
  • La gestione, il monitoraggio e la risoluzione dei problemi di replica devono essere eseguiti da SQL Server invece che dal database SQL di Azure.
  • È supportato solo @subscriber_type = 0 in sp_addsubscription per il database SQL.
  • Il database SQL di Azure non supporta la replica bidirezionale, immediata, aggiornabile o peer-to-peer.

Architettura della replica

Diagram shows the replication architecture with Azure SQL Database, which contains several subscriber clusters in different regions, and on-premises Azure virtual machines, which contains a Publisher, Logread executable, and distributor executables that connect to remote clusters.

Scenari

Scenario di replica tipico

  1. Creare una pubblicazione di replica transazionale in un database di SQL Server.
  2. Nell'istanza di SQL Server, usa la Creazione guidata nuova sottoscrizione o le istruzioni Transact-SQL per creare una sottoscrizione al database SQL di Azure.
  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. Con il server di pubblicazione dell'Istanza gestita di SQL, si può anche usare un backup di database per inizializzare l'abbonato del database SQL di Azure.

Scenario di migrazione dei dati

  1. Usa la replica transazionale per replicare i dati da un database SQL Server al database SQL di Azure.
  2. Reindirizza le applicazioni client o di livello intermedio in modo da aggiornare la copia del database.
  3. Interrompere l'aggiornamento della versione SQL Server della tabella e rimuovere la pubblicazione.

Limiti

Le opzioni seguenti non sono supportate per le sottoscrizioni del database SQL di Azure:

  • Copia associazioni filegroup
  • Copia schemi di partizionamento delle tabelle
  • Copia schemi di partizionamento dell'indice
  • Copia statistiche definite dall'utente
  • Copia associazioni predefinite
  • Copia associazioni regola
  • Copia indici full-text
  • Copia XSD per colonna XML
  • Copia indici XML
  • Copia autorizzazioni
  • Copia indici spaziali
  • Copia indici filtrati
  • Copia attributo di compressione dati
  • Copia attributo di colonna di tipo sparse
  • Converti tipo FILESTREAM in tipi di dati MAX
  • Converti tipo hierarchyId in tipi di dati MAX
  • Converti tipo spaziale in tipi di dati MAX
  • Copia proprietà estese

Limitazioni da determinare

  • Copia regole di confronto
  • Esecuzione in una transazione serializzata della stored procedure

Esempi

Creare una pubblicazione e una sottoscrizione push. Per altre informazioni, vedi:

Vedi anche