Condividi tramite


Collegamento di failover - Istanza gestita di SQL di Azure

Si applica a:Istanza gestita di SQL di Azure SQL

Questo articolo illustra come eseguire il failover di un database collegato tra SQL Server e Istanza gestita di SQL di Azure usando SQL Server Management Studio (SSMS) o PowerShell per il ripristino di emergenza o la migrazione.

Prerequisiti

Per eseguire il failover dei database nella replica secondaria tramite il collegamento sono necessari i prerequisiti seguenti:

Interrompere il carico di lavoro

Se si è pronti per eseguire il failover del database nella replica secondaria, interrompere prima qualsiasi carico di lavoro dell’applicazione nella replica primaria durante le ore di manutenzione. Ciò consente alla replica di database di recuperare il database secondario per effettuare il failover del database secondario senza perdita di dati. Assicurarsi che le applicazioni non eseguano il commit delle transazioni nella replica primaria prima del failover.

Eseguire il failover di un database

È possibile eseguire il failover di un database collegato utilizzando Transact-SQL (T-SQL), SQL Server Management Studio o PowerShell.

È possibile eseguire il failover del collegamento usando Transact-SQL a partire da SQL Server 2022 CU13 (KB5036432).

Per eseguire un failover pianificato per un collegamento, usare il comando T-SQL seguente nella replica primaria:

ALTER AVAILABILITY GROUP [<DAGname>] FAILOVER

Per eseguire un failover forzato, usare il comando T-SQL seguente nella replica secondaria:

ALTER AVAILABILITY GROUP [<DAGname>] FORCE_FAILOVER_ALLOW_DATA_LOSS

Visualizzare il database dopo il failover

Per SQL Server 2022, se si sceglie di mantenere il collegamento, è possibile verificare che il gruppo di disponibilità distribuito esista in Gruppi di disponibilità in Esplora oggetti in SQL Server Management Studio.

Se il collegamento è stato eliminato durante il failover, è possibile usare Esplora oggetti per confermare che il gruppo di disponibilità distribuito non esiste più. Se si sceglie di mantenere il gruppo di disponibilità, il database verrà comunque sincronizzato.

Eseguire la pulizia dopo il failover

Se non si seleziona Rimuovi collegamento dopo il failover riuscito, il failover con SQL Server 2022 non interrompe il collegamento. È possibile mantenere il collegamento dopo il failover, lasciando attivo il gruppo di disponibilità e il gruppo di disponibilità distribuito. Non sono necessarie ulteriori azioni.

L'eliminazione del collegamento elimina solo il gruppo di disponibilità distribuito e lascia attivo il gruppo di disponibilità. È possibile decidere di mantenere il gruppo di disponibilità o eliminarlo.

Se si decide di eliminare il gruppo di disponibilità, sostituire il seguente valore e poi eseguire il codice T-SQL di esempio:

  • <AGName> con il nome del gruppo di disponibilità in SQL Server (usato per creare il collegamento).
-- Run on SQL Server
USE MASTER
GO
DROP AVAILABILITY GROUP <AGName> 
GO

Stato incoerente a seguito di failover forzato

Dopo un failover forzato, è possibile che si verifichi uno scenario split-brain in cui entrambe le repliche si trovano nel ruolo primario, lasciando il collegamento in uno stato incoerente. Ciò può verificarsi se si effettua il failover nella replica secondaria durante un'emergenza e quindi la replica primaria torna online.

Per risolvere questo problema, vedere Correggere lo scenario split-brain.

Per usare il collegamento:

Per altre informazioni sul collegamento:

Per altri scenari di replica e migrazione, prendere in considerazione: