DBAtlas · Atlas für Datenbankbetrieb

Availability Group Failover

SQL ServerKonfiguration

Befehl

-- Run on the TARGET (secondary) REPLICA - planned, no data loss (synchronous):
ALTER AVAILABILITY GROUP [AG_Customer] FAILOVER;

-- Forced (asynchronous replica / primary unreachable, DATA LOSS risk):
-- ALTER AVAILABILITY GROUP [AG_Customer] FORCE_FAILOVER_ALLOW_DATA_LOSS;

-- Check status:
SELECT ag.name, ar.replica_server_name,
       rs.role_desc, rs.synchronization_health_desc, ar.availability_mode_desc
FROM   sys.availability_groups ag
  JOIN sys.availability_replicas ar ON ar.group_id = ag.group_id
  JOIN sys.dm_hadr_availability_replica_states rs ON rs.replica_id = ar.replica_id;

Was es tut

Verschiebt die Primary-Rolle der Availability Group auf eine andere Replica; ein geplantes Failover auf eine synchrone Replica erfolgt ohne Datenverlust.

Wann einsetzen

Rollenwechsel für Wartung/Patching, Failover bei Ausfall des Primary-Knotens.

Vorsicht

Der normale FAILOVER-Befehl wird auf der SECONDARY-Replica ausgeführt, die übernehmen soll. FORCE_FAILOVER_ALLOW_DATA_LOSS wird nur verwendet, wenn der Primary nicht erreichbar ist oder auf einer asynchronen Replica, und kann DATENVERLUST VERURSACHEN; sei sehr vorsichtig, wenn die Synchronisierung nicht fehlerfrei ist.

In DBAtlas öffnen →

Verwandte Einträge