Ausführen eines geplanten manuellen Failovers einer Verfügbarkeitsgruppe (SQL Server)
In diesem Thema wird beschrieben, wie ein manuelles Failover ohne Datenverlust (ein geplantes manuelles Failover) in einer AlwaysOn-Verfügbarkeitsgruppe mit SQL Server Management Studio, Transact-SQL oder PowerShell in SQL Server 2012 ausgeführt wird. Eine Verfügbarkeitsgruppe führt auf der Ebene eines Verfügbarkeitsreplikats ein Failover aus. Bei einem geplanten manuellen Failover geht wie bei jedem AlwaysOn-Verfügbarkeitsgruppen-Failover ein sekundäres Replikat zur primären Rolle und gleichzeitig das frühere primäre Replikat zur sekundären Rolle über.
Ein geplantes manuelles Failover, das nur unterstützt wird, wenn das primäre Replikat und das sekundäre Zielreplikat im Modus für synchrone Commits ausgeführt und gerade synchronisiert werden, behält alle Daten in den sekundären Datenbanken bei, die mit der Verfügbarkeitsgruppe im sekundären Zielreplikat verknüpft sind. Sobald das frühere primäre Replikat zur sekundären Rolle übergeht, werden seine Datenbanken sekundäre Datenbanken und starten die Synchronisierung mit den neuen primären Datenbanken. Nach dem Übergang in den Status SYNCHRONIZED kann das neue sekundäre Replikat als Ziel eines künftigen geplanten manuellen Failovers dienen.
Hinweis |
---|
Wenn das sekundäre und primäre Replikat für den automatischen Failovermodus konfiguriert sind, kann das sekundäre Replikat nach der Synchronisierung auch als Ziel für ein automatisches Failover dienen. Weitere Informationen finden Sie unter Verfügbarkeitsmodi (AlwaysOn-Verfügbarkeitsgruppen). |
Vorbereitungen:
Einschränkungen
Voraussetzungen und Einschränkungen
Sicherheit
So führen Sie manuell ein Failover für eine Verfügbarkeitsgruppe aus mit
SQL Server Management Studio
Transact-SQL
PowerShell
Nachverfolgung: Nach dem manuellen Ausführen eines Failovers für eine Verfügbarkeitsgruppe
Vorbereitungen
Einschränkungen
Ein Failoverbefehl gibt einen Wert zurück, sobald das sekundäre Zielreplikat den Befehl akzeptiert hat. Die Datenbankwiederherstellung tritt jedoch asynchron auf, nachdem die Verfügbarkeitsgruppe aufgehört hat, ein Failover auszuführen.
Datenbankübergreifende Konsistenz zwischen Datenbanken innerhalb der Verfügbarkeitsgruppe wird beim Failover nicht beibehalten.
Hinweis Datenbankübergreifende Transaktionen und verteilte Transaktionen werden von AlwaysOn-Verfügbarkeitsgruppen nicht unterstützt. Weitere Informationen finden Sie unter Datenbankübergreifende Transaktionen nicht unterstützt für Datenbankspiegelungs- oder AlwaysOn-Verfügbarkeitsgruppen (SQL Server).
Voraussetzungen und Einschränkungen
Das sekundäre Zielreplikat und das primäre Replikat müssen im Verfügbarkeitsmodus für synchrone Commits ausgeführt werden.
Das sekundäre Zielreplikat muss gerade mit dem primären Replikat synchronisiert werden. Dies erfordert, dass alle sekundären Datenbanken auf diesem sekundären Replikat mit der Verfügbarkeitsgruppe verknüpft und mit ihren entsprechenden primären Datenbanken synchronisiert sein müssen (das heißt, die lokalen sekundären Datenbanken müssen den Status SYNCHRONIZED aufweisen).
Tipp Um die Failoverbereitschaft eines sekundären Replikats zu ermitteln, fragen Sie die is_failover_ready-Spalte in der dynamischen Verwaltungssicht sys.dm_hadr_database_cluster_states ab, oder überprüfen Sie die Spalte Failoverbereitschaft des AlwaysOn-Gruppendashboards.
Dieser Task wird nur für das sekundäre Zielreplikat unterstützt. Sie müssen mit der Serverinstanz verbunden sein, auf der das sekundäre Zielreplikat gehostet wird.
Sicherheit
Berechtigungen
Erfordert die ALTER AVAILABILITY GROUP-Berechtigung für die Verfügbarkeitsgruppe, die CONTROL AVAILABILITY GROUP-Berechtigung, die ALTER ANY AVAILABILITY GROUP-Berechtigung oder die CONTROL SERVER-Berechtigung.
[Nach oben]
Verwenden von SQL Server Management Studio
So führen Sie manuell ein Failover für eine Verfügbarkeitsgruppe aus
Stellen Sie im Objekt-Explorer eine Verbindung mit einer Serverinstanz her, die ein sekundäres Replikat der Verfügbarkeitsgruppe hostet, für die ein Failover ausgeführt werden muss, und erweitern Sie die Serverstruktur.
Erweitern Sie den Knoten Hohe Verfügbarkeit (immer aktiviert) und den Knoten Verfügbarkeitsgruppen.
Klicken Sie mit der rechten Maustaste auf die Verfügbarkeitsgruppe, für die ein Failover ausgeführt werden soll, und wählen Sie den Befehl Failover aus.
Dadurch wird der Assistent für das Failover von Verfügbarkeitsgruppen gestartet. Weitere Informationen finden Sie unter Verwenden des Assistenten für Failover-Verfügbarkeitsgruppen (SQL Server Management Studio).
[Nach oben]
Verwenden von Transact-SQL
So führen Sie manuell ein Failover für eine Verfügbarkeitsgruppe aus
Stellen Sie eine Verbindung mit der Serverinstanz her, die das sekundäre Zielreplikat hostet.
Verwenden Sie die ALTER AVAILABILITY GROUP-Anweisung wie folgt:
ALTER AVAILABILITY GROUP group_name FAILOVER
Dabei ist group_name der Name der Verfügbarkeitsgruppe.
Im folgenden Beispiel wird manuell ein Failover der MyAg-Verfügbarkeitsgruppe zum verbundenen sekundären Replikat ausgeführt.
ALTER AVAILABILITY GROUP MyAg FAILOVER;
[Nach oben]
Verwenden von PowerShell
So führen Sie manuell ein Failover für eine Verfügbarkeitsgruppe aus
Ändern Sie das Verzeichnis (cd) in die Serverinstanz, die das sekundäre Zielreplikat hostet.
Verwenden Sie das Switch-SqlAvailabilityGroup-Cmdlet.
Hinweis Die Syntax eines Cmdlets kann mit dem Get-Help-Cmdlet in der SQL Server 2012 PowerShell-Umgebung angezeigt werden. Weitere Informationen finden Sie unter Aufrufen der SQL Server PowerShell-Hilfe.
Im folgenden Beispiel wird manuell ein Failover der MyAg-Verfügbarkeitsgruppe zum sekundären Replikat mit dem angegebenen Pfad ausgeführt.
Switch-SqlAvailabilityGroup -Path SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MyAg
Einrichten und Verwenden des SQL Server PowerShell-Anbieters
[Nach oben]
Nachverfolgung: Nach dem manuellen Ausführen eines Failovers für eine Verfügbarkeitsgruppe
Wenn Sie ein Failover außerhalb des Satz automatischer Failover der Verfügbarkeitsgruppe ausgeführt haben, passen Sie die Quorumabstimmungen der WSFC-Knoten an die Konfiguration der neuen Verfügbarkeitsgruppe an. Weitere Informationen finden Sie unter Windows Server-Failoverclustering (WSFC) mit SQL Server.
[Nach oben]
Siehe auch
Konzepte
Übersicht über AlwaysOn-Verfügbarkeitsgruppen (SQL Server)
Failover und Failovermodi (AlwaysOn-Verfügbarkeitsgruppen)
Ausführen eines erzwungenen manuellen Failovers einer Verfügbarkeitsgruppe (SQL Server)