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à database SQL di Azure che consente di creare repliche leggibili complete di singoli database.
Configurazioni supportate
- Database SQL di Azure può essere solo il sottoscrittore push di un server di pubblicazione e database di distribuzione di SQL Server.
- L'istanza di SQL Server che funge da server di pubblicazione e/o database di distribuzione può essere un'istanza di SQL Server in esecuzione in locale, un'Istanza gestita di SQL di Azure o un'istanza di SQL Server in esecuzione in una macchina virtuale di Azure nel cloud.
- Il database di distribuzione e gli agenti di replica non possono essere inseriti in un database nel database SQL di Azure.
- La replica snapshot e la replica transazionale unidirezionale sono supportate. La replica transazionale peer-to-peer e la replica di tipo merge non sono supportate.
Versioni
Per eseguire correttamente la replica in un database in database SQL di Azure, SQL Server editori e distributori 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:
- SQL Server 2016 e versione successiva
- SQL Server 2014 RTM CU10 (12.0.4427.24) o SP1 CU3 (12.0.2556.4)
- SQL Server 2012 SP2 CU8 (11.0.5634.1) o SP3 (11.0.6020.0)
Nota
Il tentativo di configurare la replica usando una versione non supportata può causare un numero di errore MSSQL_REPL20084 (Il processo non è riuscito a connettersi al Sottoscrittore) e MSSQL_REPL40532 (Impossibile aprire il nome> del server <richiesto dall'account di accesso. L'account di accesso non è riuscito.
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) | Sì |
Snapshot | Sì (solo come sottoscrittore) | Sì |
Replica di tipo merge | No | No |
Peer-to-peer | No | No |
Bidirezionale | No | Sì |
Sottoscrizioni aggiornabili | No | No |
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 gli account di accesso di autenticazione SQL Server per connettersi a database SQL di Azure.
- Le tabelle replicate devono avere una chiave primaria.
- È necessario avere una sottoscrizione di Azure.
- Il sottoscrittore 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 della replica, il monitoraggio e la risoluzione dei problemi devono essere eseguite da SQL Server anziché da database SQL di Azure.
- È supportato solo
@subscriber_type = 0
in sp_addsubscription per il database SQL. - database SQL di Azure non supporta la replica bidirezionale, immediata, aggiornabile o peer-to-peer.
Architettura della replica
Scenari
Scenario di replica tipico
- Creare una pubblicazione di replica transazionale in un database di SQL Server.
- In SQL Server usare le istruzioni New Subscription Wizard o Transact-SQL per creare una sottoscrizione push alla database SQL di Azure.
- 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 un server di pubblicazione Istanza gestita di SQL, è anche possibile usare un backup del database per inizializzare il sottoscrittore database SQL di Azure.
Scenario di migrazione dei dati
- Usare la replica transazionale per replicare i dati da un database SQL Server a database SQL di Azure.
- Reindirizzare le applicazioni client o di livello intermedio per aggiornare la copia del database.
- Interrompere l'aggiornamento della versione SQL Server della tabella e rimuovere la pubblicazione.
Limitazioni
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, vedere:
- Creare una pubblicazione
- Creare una sottoscrizione push usando il nome del server come sottoscrittore (ad esempio N'azuresqldbdns.database.windows.net) e il nome database SQL di Azure come database di destinazione(ad esempio AdventureWorks).