Aktivieren und Deaktivieren von AlwaysOn-Verfügbarkeitsgruppen (SQL Server)
Das Aktivieren Always On Verfügbarkeitsgruppen ist eine Voraussetzung für die Verwendung von Verfügbarkeitsgruppen für einen Server instance. Bevor Sie eine Verfügbarkeitsgruppe erstellen und konfigurieren können, muss das Feature Always On Verfügbarkeitsgruppen für die einzelnen instance von SQL Server aktiviert sein, die ein Verfügbarkeitsreplikat für eine oder mehrere Verfügbarkeitsgruppen hosten.
Wichtig
Wenn Sie einen WSFC-Cluster löschen und neu erstellen, müssen Sie das Feature Always On Verfügbarkeitsgruppen auf jedem instance von SQL Server deaktivieren und erneut aktivieren, der ein Verfügbarkeitsreplikat im ursprünglichen WSFC-Cluster gehostet hat.
Vorbereitungen:
So wird es gemacht:
Vorbereitungen
Voraussetzungen zum Aktivieren von AlwaysOn-Verfügbarkeitsgruppen
Die Serverinstanz muss sich auf einem WSFC-Knoten (Windows Server Failover Clustering) befinden.
Auf dem server instance muss eine Edition von SQL Server ausgeführt werden, die Always On Verfügbarkeitsgruppen unterstützt. Weitere Informationen finden Sie unter Features Supported by the Editions of SQL Server 2014.
AlwaysOn-Verfügbarkeitsgruppen sollten jeweils nur für eine Serverinstanz aktiviert werden. Warten Sie nach dem Aktivieren von AlwaysOn-Verfügbarkeitsgruppen, bis der SQL Server Dienst neu gestartet wurde, bevor Sie zu einem anderen Server instance.
Informationen zu zusätzlichen Voraussetzungen zum Erstellen und Konfigurieren von Verfügbarkeitsgruppen finden Sie unter Voraussetzungen, Einschränkungen und Empfehlungen für AlwaysOn-Verfügbarkeitsgruppen (SQL Server).
Sicherheit
Während AlwaysOn-Verfügbarkeitsgruppen auf einer instance von SQL Server aktiviert sind, hat der Server instance die volle Kontrolle über den WSFC-Cluster.
Berechtigungen
Erfordert auf dem lokalen Computer die Mitgliedschaft in der Gruppe Administrator und Vollzugriff auf den WSFC-Cluster. Wenn Sie AlwaysOn mit PowerShell aktivieren, öffnen Sie das Eingabeaufforderungsfenster unter Verwendung der Option Als Administrator ausführen .
Erfordert, dass von Active Directory Objekte erstellt und Objektberechtigungen verwaltet werden.
Bestimmen, ob AlwaysOn-Verfügbarkeitsgruppen aktiviert sind
Verwendung von SQL Server Management Studio
So bestimmen Sie, ob AlwaysOn-Verfügbarkeitsgruppen aktiviert sind
Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf die Serverinstanz, und klicken Sie dann auf Eigenschaften.
Klicken Sie im Dialogfeld Servereigenschaften auf die Seite Allgemein . Die Eigenschaft Ist HADR-aktiviert zeigt einen der folgenden Werte an:
True, wenn AlwaysOn-Verfügbarkeitsgruppen aktiviert sind.
False, wenn AlwaysOn-Verfügbarkeitsgruppen deaktiviert sind.
Verwenden von Transact-SQL
So bestimmen Sie, ob AlwaysOn-Verfügbarkeitsgruppen aktiviert sind
Verwenden Sie die folgende SERVERPROPERTY -Anweisung:
SELECT SERVERPROPERTY ('IsHadrEnabled');
Die Einstellung der
IsHadrEnabled
Servereigenschaft gibt wie folgt an, ob ein instance von SQL Server für AlwaysOn-Verfügbarkeitsgruppen aktiviert ist:Falls
IsHadrEnabled
= 1, sind AlwaysOn-Verfügbarkeitsgruppen aktiviert.Wenn
IsHadrEnabled
gleich 0 ist, sind AlwaysOn-Verfügbarkeitsgruppen deaktiviert.
Hinweis
Weitere Informationen zur
IsHadrEnabled
Servereigenschaft finden Sie unter SERVERPROPERTY (Transact-SQL)..
PowerShell
So bestimmen Sie, ob AlwaysOn-Verfügbarkeitsgruppen aktiviert sind
Legen Sie den Standardwert (
cd
) auf den Server instance (z. B.\SQL\NODE1\DEFAULT
) fest, auf dem Sie bestimmen möchten, ob Always On Verfügbarkeitsgruppen aktiviert ist.Geben Sie den folgenden PowerShell-
Get-Item
-Befehl ein:Get-Item . | Select IsHadrEnabled
Hinweis
Verwenden Sie das Cmdlet in der SQL Server PowerShell-Umgebung, um die
Get-Help
Syntax eines Cmdlets anzuzeigen. Weitere Informationen finden Sie unter Get Help SQL Server PowerShell.
Einrichten und Verwenden des SQL Server PowerShell-Anbieters
AlwaysOn-Verfügbarkeitsgruppen aktivieren
Aktivieren von AlwaysOn mit:
Verwenden des SQL Server-Konfigurations-Managers
So aktivieren Sie AlwaysOn-Verfügbarkeitsgruppen
Stellen Sie eine Verbindung mit dem Windows Server-Failoverclustering-Knoten (WSFC) her, der die SQL Server instance hostet, auf dem Sie AlwaysOn-Verfügbarkeitsgruppen aktivieren möchten.
Zeigen Sie im Menü Start auf Alle Programme, zeigen Sie auf Microsoft SQL Server 2014, zeigen Sie auf Konfigurationstools, und klicken Sie auf SQL Server-Konfigurations-Manager.
Klicken Sie in SQL Server-Konfigurations-Manager auf SQL Server Dienste, klicken Sie mit der rechten Maustaste auf SQL Server (<
instance name
>), wobei <instance name
> der Name eines lokalen Servers instance ist, für den Sie AlwaysOn-Verfügbarkeitsgruppen aktivieren möchten, und klicken Sie dann auf Eigenschaften.Wählen Sie die Registerkarte Hohe Verfügbarkeit (immer aktiviert) aus.
Überprüfen Sie, ob das Feld Name des Windows-Failoverclusters den Namen des lokalen Failoverclusters enthält. Wenn dieses Feld leer ist, unterstützt diese Serverinstanz derzeit keine Always On-Verfügbarkeitsgruppen. Entweder ist der lokale Computer kein Clusterknoten, der WSFC-Cluster wurde heruntergefahren, oder diese Edition von SQL Server 2014, die Always On Verfügbarkeitsgruppen nicht unterstützt.
Aktivieren Sie das Kontrollkästchen AlwaysOn-Verfügbarkeitsgruppen aktivieren , und klicken Sie auf OK.
SQL Server -Konfigurations-Manager speichert die Änderung. Dann müssen Sie den SQL Server -Dienst manuell neu starten. Dies ermöglicht die Auswahl einer für die Geschäftsanforderungen optimalen Neustartzeit. Wenn der SQL Server Dienst neu gestartet wird, wird AlwaysOn aktiviert, und die
IsHadrEnabled
Servereigenschaft wird auf 1 festgelegt.
SQL Server PowerShell
So aktivieren Sie AlwaysOn
Ändern Sie das Verzeichnis (
cd
) zu einer Serverinstanz, die Sie für AlwaysOn-Verfügbarkeitsgruppen aktivieren möchten.Verwenden Sie das
Enable-SqlAlwaysOn
-Cmdlet, um AlwaysOn-Verfügbarkeitsgruppen zu aktivieren.Verwenden Sie das Cmdlet in der SQL Server PowerShell-Umgebung, um die
Get-Help
Syntax eines Cmdlets anzuzeigen. Weitere Informationen finden Sie unter Get Help SQL Server PowerShell.Hinweis
Informationen zum Steuern, ob das Cmdlet den
Enable-SqlAlwaysOn
SQL Server-Dienst neu startet, finden Sie weiter unten in diesem Thema unter When Does a Cmdlet Restart the SQL Server Service?.
Einrichten und Verwenden des SQL Server PowerShell-Anbieters
Beispiel: Enable-SqlAlwaysOn
Der folgende PowerShell-Befehl aktiviert Always On Verfügbarkeitsgruppen auf einer instance von SQL Server (Computerinstanz\).
Enable-SqlAlwaysOn -Path SQLSERVER:\SQL\Computer\Instance
AlwaysOn-Verfügbarkeitsgruppen deaktivieren
Vor dem Deaktivieren von AlwaysOn:
Deaktivieren von AlwaysOn mit:
Nachverfolgung:Nach dem Deaktivieren von AlwaysOn
Wichtig
Deaktivieren Sie AlwaysOn auf jeweils nur einer Serverinstanz. Warten Sie nach dem Deaktivieren von AlwaysOn-Verfügbarkeitsgruppen, bis der SQL Server Dienst neu gestartet wurde, bevor Sie zu einem anderen Server instance.
Empfehlungen
Bevor Sie AlwaysOn auf einer Serverinstanz deaktivieren, sollten Sie wie folgt vorgehen:
Wenn das primäre Replikat einer Verfügbarkeitsgruppe, die beibehalten werden soll, derzeit auf einer Serverinstanz gehostet wird, sollten Sie nach Möglichkeit manuell ein Failover für die Verfügbarkeitsgruppe zum synchronisierten sekundären Replikat ausführen. Weitere Informationen finden Sie unter Ausführen eines geplanten manuellen Failovers einer Verfügbarkeitsgruppe (SQL Server).
Entfernen Sie alle lokalen sekundären Replikate. Weitere Informationen finden Sie unter Entfernen eines sekundären Replikats aus einer Verfügbarkeitsgruppe (SQL Server).
Verwenden des SQL Server-Konfigurations-Managers
So deaktivieren Sie AlwaysOn
Stellen Sie eine Verbindung mit dem Windows Server-Failoverclusteringknoten (WSFC) her, der die SQL Server instance hostet, auf der Sie AlwaysOn-Verfügbarkeitsgruppen deaktivieren möchten.
Zeigen Sie im Startmenü auf Alle Programme, zeigen Sie auf Microsoft SQL Server 2014, zeigen Sie auf Konfigurationstools, und klicken Sie auf SQL Server-Konfigurations-Manager.
Klicken Sie in SQL Server-Konfigurations-Manager auf SQL Server Dienste, klicken Sie mit der rechten Maustaste auf SQL Server (<
instance name
>), wobei <instance name
> der Name eines lokalen Servers instance ist, für den Sie AlwaysOn-Verfügbarkeitsgruppen deaktivieren möchten, und klicken Sie auf Eigenschaften.Deaktivieren Sie auf der RegisterkarteAlwaysOn hohe Verfügbarkeitdas Kontrollkästchen AlwaysOn-Verfügbarkeitsgruppen aktivieren , und klicken Sie auf OK.
SQL Server -Konfigurations-Manager speichert die Änderung und startet den SQL Server -Dienst neu. Wenn der SQL Server Dienst neu gestartet wird, wird AlwaysOn deaktiviert, und die
IsHadrEnabled
Servereigenschaft wird auf 0 festgelegt, um anzugeben, dass AlwaysOn-Verfügbarkeitsgruppen deaktiviert sind.Es empfiehlt sich, dass Sie die Informationen unter Nachverfolgung: Nach dem Deaktivieren von AlwaysOnspäter in diesem Thema lesen.
SQL Server PowerShell
So deaktivieren Sie AlwaysOn
Ändern Sie das Verzeichnis (
cd
) in einen derzeit aktivierten Server instance, den Sie für AlwaysOn-Verfügbarkeitsgruppen aufheben möchten.Verwenden Sie das
Disable-SqlAlwaysOn
-Cmdlet, um AlwaysOn-Verfügbarkeitsgruppen zu aktivieren.Der folgende Befehl deaktiviert beispielsweise AlwaysOn-Verfügbarkeitsgruppen für eine instance von SQL Server (Computerinstanz\). Dieser Befehl erfordert einen Neustart der Instanz, und Sie werden aufgefordert, diesen Neustart zu bestätigen.
Disable-SqlAlwaysOn -Path SQLSERVER:\SQL\Computer\Instance
Wichtig
Informationen zum Steuern, ob das Cmdlet den
Disable-SqlAlwaysOn
SQL Server-Dienst neu startet, finden Sie weiter unten in diesem Thema unter When Does a Cmdlet Restart the SQL Server Service?.Verwenden Sie das Cmdlet in der SQL Server PowerShell-Umgebung, um die
Get-Help
Syntax eines Cmdlets anzuzeigen. Weitere Informationen finden Sie unter Get Help SQL Server PowerShell.
Einrichten und Verwenden des SQL Server PowerShell-Anbieters
Nachverfolgung: Nach dem Deaktivieren von AlwaysOn
Nachdem Sie AlwaysOn-Verfügbarkeitsgruppen deaktiviert haben, muss die instance von SQL Server neu gestartet werden. Die Serverinstanz wird vom SQL-Konfigurations-Manager automatisch neu gestartet. Wenn Sie jedoch das Disable-SqlAlwaysOn
-Cmdlet verwendet haben, müssen Sie die Serverinstanz manuell neu starten. Weitere Informationen finden Sie unter sqlservr Application.
Auf der neu gestarteten Serverinstanz:
Verfügbarkeitsdatenbanken werden bei SQL Server-Start nicht gestartet. Daher kann nicht auf sie zugegriffen werden.
Die einzige unterstützte AlwaysOn-Transact-SQL-Anweisung ist DROP AVAILABILITY GROUP. Die Optionen CREATE AVAILABILITY GROUP, ALTER AVAILABILITY GROUP und SET HADR von ALTER DATABASE werden nicht unterstützt.
SQL Server Metadaten und Always On Verfügbarkeitsgruppen-Konfigurationsdaten in WSFC sind durch die Deaktivierung von AlwaysOn-Verfügbarkeitsgruppen nicht betroffen.
Wenn Sie AlwaysOn-Verfügbarkeitsgruppen dauerhaft auf jeder Serverinstanz deaktivieren, die ein Verfügbarkeitsreplikat für eine oder mehrere Verfügbarkeitsgruppen hostet, empfiehlt es sich, dass Sie die folgenden Schritte ausführen:
Wenn Sie die lokalen Verfügbarkeitsreplikate nicht vor dem Deaktivieren von AlwaysOn entfernt haben, löschen Sie jede Verfügbarkeitsgruppe, für die die Serverinstanz ein Verfügbarkeitsreplikat hostet. Informationen zum Löschen einer Verfügbarkeitsgruppe finden Sie unter Entfernen einer Verfügbarkeitsgruppe (SQL Server).
Um die zurückgelassenen Metadaten zu entfernen, löschen Sie jede betroffene Verfügbarkeitsgruppe auf einer Serverinstanz, die Teil des ursprünglichen WSFC-Clusters ist.
Auf die primären Datenbanken kann weiterhin anhand aller Verbindungen außer der Datensynchronisierung zwischen der primären und der sekundären Datenbank zugegriffen werden.
Die sekundären Datenbanken übernehmen den Status RESTORING. Sie können sie entweder löschen oder sie mit RESTORE WITH RECOVERY wiederherstellen. Wiederhergestellte Datenbanken nehmen jedoch nicht mehr an der Datensynchronisierung für Verfügbarkeitsgruppen teil.
Wann startet ein Cmdlet den SQL Server-Dienst neu?
Auf einer gerade ausgeführten Serverinstanz kann die Verwendung von Enable-SqlAlwaysOn
oder Disable-SqlAlwaysOn
zum Ändern der aktuellen AlwaysOn-Einstellung zu einem Neustart des SQL Server-Diensts führen. Das Neustartverhalten hängt von den folgenden Bedingungen ab:
-NoServiceRestart-Parameter angegeben | -Force-Parameter angegeben | Wurde der SQL Server -Dienst neu gestartet? |
---|---|---|
Nein | Nein | Standardmäßig. Aber das Cmdlet fordert Sie folgendermaßen auf: Zum Abschließen dieser Aktion müssen wir den SQL Server-Dienst für die Serverinstanz <instance_name> neu starten. Möchten Sie fortfahren? [Y] Ja, [N] Nein, [S] Anhalten, [?] Hilfe (die Standardeinstellung ist „Y"): Wenn Sie N oder Sangeben, wird der Dienst nicht neu gestartet. |
Nein | Ja | Der Dienst wird neu gestartet. |
Ja | Nein | Der Dienst wird nicht neu gestartet. |
Ja | Ja | Der Dienst wird nicht neu gestartet. |
Weitere Informationen
Übersicht über AlwaysOn-Verfügbarkeitsgruppen (SQL Server)
SERVERPROPERTY (Transact-SQL)