Condividi tramite


Replica in database SQL di Azure

Si applica a: database SQL di Azuredatabase SQL in Fabric

È possibile configurare Azure SQL Database o il database SQL di Fabric come sottoscrittore push in una topologia di replica transazionale o snapshot unidirezionale da SQL Server e dall'Istanza gestita di SQL di Azure.

Nota

Questo articolo descrive l'uso della replica transazionale per trasferire i dati nel database SQL di Azure o nel database SQL di Fabric. Questo articolo si applica allo stesso modo al database SQL di Azure e al database SQL di Fabric, salvo diversa indicazione.

Non è correlato a 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:

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 (SSMS) e SQL Server Data Tools (SSDT).

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

La pubblicazione in database SQL dell'infrastruttura da un database di SQL Server è supportata dalle versioni seguenti di SQL Server:

  • SQL Server 2022 RTM CU12 e versioni successive

Tipi di replica

Esistono diversi tipi di replica:

Replicazione 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 No

Note

  • Sono supportate solo le sottoscrizioni push nel database SQL di Azure.
  • La replicazione può essere configurata usando SQL Server Management Studio o eseguendo istruzioni Transact-SQL sull'editore. Non è possibile configurare la replica usando il portale di Azure.
  • Per eseguire l'autenticazione:
    • Azure-Arc abilitati SQL Server consentono alla replica di usare l'autenticazione Microsoft Entra ID.
    • La replica può usare l'autenticazione Microsoft Entra ID con un'entità di servizio per connettersi al database SQL di Fabric.
    • 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.
  • Solo @subscriber_type = 0 è supportato 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

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

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 di replica seguenti non sono supportate dal database SQL di Azure:

  • Copia associazioni gruppi di file
  • Copia schemi di partizionamento delle tabelle
  • Copiare gli schemi di partizionamento dell'indice
  • Copia statistiche definite dall'utente
  • Copia associazioni predefinite
  • Copia associazioni di regole
  • Copia degli indici full-text
  • Copia XSD 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 FILESTREAM in tipi di dati MAX
  • Converti hierarchyid in tipi di dati MAX
  • Converti tipi spaziali in tipi di dati MAX
  • Copia proprietà estese

Limitazioni da determinare

  • Raccoglimento delle copie
  • Esecuzione in una transazione serializzata di una procedura memorizzata

Esempi

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

Vedi anche