Freigeben über


Hinzufügen einer Datenbank zu einer Verfügbarkeitsgruppe (SQL Server)

In diesem Thema wird beschrieben, wie Sie einer AlwaysOn-Verfügbarkeitsgruppe mithilfe von SQL Server Management Studio, Transact-SQL oder PowerShell in SQL Server 2014 eine Datenbank hinzufügen.

Vorbereitungen

Voraussetzungen und Einschränkungen

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.

Verwendung von SQL Server Management Studio

So fügen sie einer Verfügbarkeitsgruppe eine Datenbank hinzu

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit der Serverinstanz her, die das primäre Verfügbarkeitsreplikat hostet, und erweitern Sie die Serverstruktur.

  2. Erweitern Sie den Knoten Hohe Verfügbarkeit (immer aktiviert) und den Knoten Verfügbarkeitsgruppen .

  3. Klicken Sie mit der rechten Maustaste auf die Verfügbarkeitsgruppe, und wählen Sie einen der folgenden Befehle aus:

    • Wählen Sie zum Starten des Assistenten zum Hinzufügen von Datenbanken zu Verfügbarkeitsgruppen den Befehl Datenbank hinzufügen aus. Weitere Informationen finden Sie unter Verwenden des Assistenten zum Hinzufügen von Datenbanken zu Verfügbarkeitsgruppen (SQL Server Management Studio).

    • Wählen Sie den Befehl Eigenschaften aus, um mindestens eine Datenbank durch Angabe im Dialogfeld für die Eigenschaften der Verfügbarkeitsgruppe hinzuzufügen. Folgende Schritte sind zum Hinzufügen einer Datenbank erforderlich:

      1. Klicken Sie im Bereich Verfügbarkeitsdatenbanken auf die Schaltfläche Hinzufügen . Dadurch wird ein leeres Datenbankfeld erstellt und ausgewählt.

      2. Geben Sie den Namen einer Datenbank ein, die die Voraussetzungen der Verfügbarkeitsdatenbanken erfüllt.

      Wiederholen Sie zum Hinzufügen einer weiteren Datenbank die vorhergehenden Schritte. Wenn Sie alle Datenbanken angegeben haben, klicken Sie auf OK , um den Vorgang abzuschließen.

      Nachdem Sie das Kontrollkästchen Eigenschaften der Verfügbarkeitsgruppe aktiviert haben, um einer Verfügbarkeitsgruppe eine Datenbank hinzuzufügen, müssen Sie die zugehörige zweite Datenbank auf jeder Serverinstanz konfigurieren, auf der das sekundäre Replikat gehostet wird. Weitere Informationen finden Sie unter Starten der Datenverschiebung in einer sekundären AlwaysOn-Datenbank (SQL Server).

Verwenden von Transact-SQL

So fügen sie einer Verfügbarkeitsgruppe eine Datenbank hinzu

  1. Stellen Sie eine Verbindung mit der Serverinstanz her, die die Serverinstanz mit dem primären Replikat hostet.

  2. Verwenden Sie die ALTER AVAILABILITY GROUP -Anweisung wie folgt:

    ALTER AVAILABILITY GROUP group_name ADD DATABASE database_name [,...n]

    Dabei ist group_name der Name der Verfügbarkeitsgruppe und database_name der Name einer zur Gruppe hinzuzufügenden Datenbank.

    Im folgenden Beispiel wird die Datenbank MyDb3 zur Verfügbarkeitsgruppe MyAG hinzugefügt.

    -- Connect to the server instance that hosts the primary replica.  
    -- Add an existing database to the availability group.  
    ALTER AVAILABILITY GROUP MyAG ADD DATABASE MyDb3;  
    GO  
    
  3. Nachdem Sie einer Verfügbarkeitsgruppe eine Datenbank hinzugefügt haben, müssen Sie die zugehörige zweite Datenbank auf jeder Serverinstanz konfigurieren, auf der das sekundäre Replikat gehostet wird. Weitere Informationen finden Sie unter Starten der Datenverschiebung in einer sekundären AlwaysOn-Datenbank (SQL Server).

PowerShell

So fügen sie einer Verfügbarkeitsgruppe eine Datenbank hinzu

  1. Ändern Sie das Verzeichnis (cd) zur Serverinstanz, die das primäre Replikat hostet.

  2. Verwenden Sie das Add-SqlAvailabilityDatabase-Cmdlet.

    Beispielsweise wird mit dem folgenden Befehl die sekundäre Datenbank MyDd der MyAG -Verfügbarkeitsgruppe hinzugefügt, deren primäres Replikat von PrimaryServer\InstanceNamegehostet wird.

    Add-SqlAvailabilityDatabase `   
     -Path SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MyAG `   
     -Database "MyDb"  
    

    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.

  3. Nachdem Sie einer Verfügbarkeitsgruppe eine Datenbank hinzugefügt haben, müssen Sie die zugehörige zweite Datenbank auf jeder Serverinstanz konfigurieren, auf der das sekundäre Replikat gehostet wird. Weitere Informationen finden Sie unter Starten der Datenverschiebung in einer sekundären AlwaysOn-Datenbank (SQL Server).

Informationen zum Einrichten und Verwenden des SQL Server PowerShell-Anbieters finden Sie unter SQL Server PowerShell-Anbieter.

Im folgenden Beispiel wird der vollständige Vorbereitungsprozess veranschaulicht: Eine sekundäre Datenbank wird von einer Datenbank auf der Serverinstanz, von der das primäre Replikat einer Verfügbarkeitsgruppe gehostet wird, vorbereitet. Anschließend wird die Datenbank einer Verfügbarkeitsgruppe (als primäre Datenbank) hinzugefügt, und dann wird die sekundäre Datenbank mit der Verfügbarkeitsgruppe verknüpft. Zunächst werden die Datenbank und das zugehörige Transaktionsprotokoll gesichert. Anschließend werden die Datenbank- und Protokollsicherungen in den Serverinstanzen wiederhergestellt, von denen ein sekundäres Replikat gehostet wird.

Add-SqlAvailabilityDatabase wird im Beispiel zweimal aufgerufen: zuerst für das primäre Replikat, um die Datenbank der Verfügbarkeitsgruppe hinzuzufügen, und anschließend für das sekundäre Replikat, um die sekundäre Datenbank auf diesem Replikat mit der Verfügbarkeitsgruppe zu verknüpfen. Wenn Sie über mehr als ein sekundäres Replikat verfügen, muss die sekundäre Datenbank auf jedem einzelnen Replikat wiederhergestellt und verknüpft werden.

$DatabaseBackupFile = "\\share\backups\MyDatabase.bak"  
$LogBackupFile = "\\share\backups\MyDatabase.trn"  
$MyAgPrimaryPath = "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MyAg"  
$MyAgSecondaryPath = "SQLSERVER:\SQL\SecondaryServer\InstanceName\AvailabilityGroups\MyAg"  
  
Backup-SqlDatabase -Database "MyDatabase" -BackupFile $DatabaseBackupFile -ServerInstance "PrimaryServer\InstanceName"  
Backup-SqlDatabase -Database "MyDatabase" -BackupFile $LogBackupFile -ServerInstance "PrimaryServer\InstanceName" -BackupAction 'Log'  
  
Restore-SqlDatabase -Database "MyDatabase" -BackupFile $DatabaseBackupFile -ServerInstance "SecondaryServer\InstanceName" -NoRecovery  
Restore-SqlDatabase -Database "MyDatabase" -BackupFile $LogBackupFile -ServerInstance "SecondaryServer\InstanceName" -RestoreAction 'Log' -NoRecovery  
  
Add-SqlAvailabilityDatabase -Path $MyAgPrimaryPath -Database "MyDatabase"  
Add-SqlAvailabilityDatabase -Path $MyAgSecondaryPath -Database "MyDatabase"

Weitere Informationen

Übersicht über AlwaysOn-Verfügbarkeitsgruppen (SQL Server)
Erstellung und Konfiguration von Verfügbarkeitsgruppen (SQL Server)
Verwenden des AlwaysOn-Dashboards (SQL Server Management Studio)
Überwachen von Verfügbarkeitsgruppen (Transact-SQL)