Aktivieren und Deaktivieren von AlwaysOn-Verfügbarkeitsgruppen (SQL Server)
Das Aktivieren von AlwaysOn-Verfügbarkeitsgruppen ist eine Voraussetzung für eine Serverinstanz, um Verfügbarkeitsgruppen zu verwenden. Bevor Sie eine Verfügbarkeitsgruppe erstellen und konfigurieren können, muss das Feature "AlwaysOn-Verfügbarkeitsgruppen" für jede Instanz von SQL Server aktiviert sein, die ein Verfügbarkeitsreplikat für eine oder mehrere Verfügbarkeitsgruppen hosten soll.
Wichtig
Wenn Sie einen WSFC-Cluster löschen und erneut erstellen, müssen Sie das Feature "AlwaysOn-Verfügbarkeitsgruppen" für jede Instanz von SQL Server deaktivieren und erneut aktivieren, die ein Verfügbarkeitsreplikat im ursprünglichen WSFC-Cluster gehostet hat.
Vorbereitungen:
Anleitung:
Vorbereitungen
Voraussetzungen zum Aktivieren von AlwaysOn-Verfügbarkeitsgruppen
Die Serverinstanz muss sich auf einem WSFC-Knoten (Windows Server Failover Clustering) befinden.
Die Serverinstanz muss eine Edition von SQL Server ausführen, die AlwaysOn-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 mit einer anderen Serverinstanz fortfahren.
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 in einer Sql Server-Instanz aktiviert sind, verfügt die Serverinstanz über vollzugriff auf 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 an, ob eine Instanz von SQL Server für AlwaysOn-Verfügbarkeitsgruppen wie folgt 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 die Standardeinstellung (
cd
) auf die Serverinstanz (z. B.\SQL\NODE1\DEFAULT
) fest, für die Sie bestimmen möchten, ob AlwaysOn-Verfügbarkeitsgruppen aktiviert sind.Geben Sie den folgenden PowerShell-
Get-Item
-Befehl ein:Get-Item . | Select IsHadrEnabled
Hinweis
Verwenden Sie das
Get-Help
Cmdlet in der SQL Server PowerShell-Umgebung, um die 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
So aktivieren Sie 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-Instanz hostet, in der Sie AlwaysOn-Verfügbarkeitsgruppen aktivieren 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 Services, klicken Sie mit der rechten Maustaste auf SQL Server (><
instance name
), wobei <instance name
> es sich um den Namen einer lokalen Serverinstanz handelt, für die Sie AlwaysOn-Verfügbarkeitsgruppen aktivieren möchten, und klicken Sie 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 AlwaysOn-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
Get-Help
Cmdlet in der SQL Server PowerShell-Umgebung, um die Syntax eines Cmdlets anzuzeigen. Weitere Informationen finden Sie unter Get Help SQL Server PowerShell.Hinweis
Informationen zum Steuern, ob das
Enable-SqlAlwaysOn
Cmdlet den SQL Server-Dienst neu startet, finden Sie unter Wann startet ein Cmdlet den SQL Server-Dienst neu?, weiter unten in diesem Thema.
Einrichten und Verwenden des SQL Server PowerShell-Anbieters
Beispiel: Enable-SqlAlwaysOn
Der folgende PowerShell-Befehl aktiviert AlwaysOn-Verfügbarkeitsgruppen in einer Instanz von SQL Server (Computerinstanz\).
Enable-SqlAlwaysOn -Path SQLSERVER:\SQL\Computer\Instance
AlwaysOn-Verfügbarkeitsgruppen deaktivieren
Bevor Sie AlwaysOn deaktivieren:
So deaktivieren Sie 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 mit einer anderen Serverinstanz fortfahren.
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-Failoverclustering -Knoten (WSFC) her, der die SQL Server-Instanz hostet, in 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 Services, klicken Sie mit der rechten Maustaste auf SQL Server (
instance name
<>), wobei <instance name
> es sich um den Namen einer lokalen Serverinstanz handelt, für die 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 eine aktuell aktivierte Serverinstanz, die Sie für AlwaysOn-Verfügbarkeitsgruppen aufheben möchten.Verwenden Sie das
Disable-SqlAlwaysOn
-Cmdlet, um AlwaysOn-Verfügbarkeitsgruppen zu aktivieren.Beispielsweise werden durch den folgenden Befehl AlwaysOn-Verfügbarkeitsgruppen auf der SQL Serverinstanz (Computer\Instanz) aktiviert. 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
Disable-SqlAlwaysOn
Cmdlet den SQL Server-Dienst neu startet, finden Sie unter Wann startet ein Cmdlet den SQL Server-Dienst neu?, weiter unten in diesem Thema.Verwenden Sie das
Get-Help
Cmdlet in der SQL Server PowerShell-Umgebung, um die 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 SQL Server-Instanz 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 AlwaysOn-Verfügbarkeitsgruppen-Konfigurationsdaten in WSFC sind nicht betroffen, indem AlwaysOn-Verfügbarkeitsgruppen deaktiviert werden.
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)