Arbeiten mit Read Replicas für Microsoft SQL Server in Amazon RDS - Amazon Relational Database Service

Arbeiten mit Read Replicas für Microsoft SQL Server in Amazon RDS

Sie verwenden Lesereplikate üblicherweise, um die Replikation zwischen Amazon RDS-DB-Instances zu konfigurieren. Allgemeine Informationen zu Lesereplikaten finden Sie unter Arbeiten mit Lesereplikaten.

In diesem Abschnitt finden Sie spezifische Informationen zum Arbeiten mit Lesereplikaten unter Amazon RDS for SQL Server.

Konfigurieren von Read Replicas für SQL Server

Bevor eine DB-Instance als Quell-Instance für die Replikation eingesetzt werden kann, müssen Sie automatische Sicherungen auf der Quell-DB-Instance aktivieren. Hierzu legen Sie für den Aufbewahrungszeitraum für Sicherungen einen anderen Wert als 0 fest. Die Quell-DB-Instance muss eine Multi-AZ-Bereitstellung mit Always On-Verfügbarkeitsgruppen sein. Durch das Festlegen dieses Bereitstellungstyps wird außerdem erzwungen, dass automatische Sicherungen aktiviert sind.

Das Erstellen eines SQL Server-Lesereplikats erfordert keinen Nutzungsausfall für die primäre DB-Instance. Amazon RDS stellt die nötigen Parameter und Berechtigungen für die Quell-DB-Instance und das Lesereplikat ein, ohne einen Service zu unterbrechen. Ein Snapshot von der Quell-DB-Instance wird gemacht und dieser Snapshot wird zum Lesereplikat. Es findet kein Nutzungsausfall statt, wenn Sie ein Lesereplikat löschen.

Sie können bis zu fünf Lesereplikate aus einer Quell-DB-Instance erstellen. Damit die Replikation effektiv durchgeführt werden kann, sollte jedes Lesereplikat über die selbe Menge an Rechen- und Speicherressourcen wie die Quell-DB-Instance verfügen. Wenn Sie die Quell-DB-Instance skalieren, skalieren Sie auch die Lesereplikate.

Die SQL Server-DB-Engine-Version der Quell-DB-Instance und alle ihre Lesereplikate müssen identisch sein. Amazon RDS aktualisiert die primäre Instance unmittelbar nach dem Upgrade der Lesereplikate, unabhängig vom Wartungsfenster. Weitere Informationen zum Aktualisieren der DB-Engine-Version finden Sie unter Upgrades der Microsoft SQL Server-DB-Engine.

Damit ein Lesereplikat Änderungen von der Quelle empfängt und anwendet, sollte es über ausreichende Rechen- und Speicherressourcen verfügen. Wenn ein Lesereplikat die Kapazität von Rechen-, Netzwerk- und Speicherressourcen erreicht hat, stellt das Lesereplikat den Empfang und die Anwendung von Änderungen aus seiner Quelle ein. Sie können die Speicher- und CPU-Ressourcen eines Lesereplikats unabhängig von seiner Quelle und anderen Lesereplikaten ändern.

Read-Replica-Einschränkungen mit SQL Server

Die folgenden Einschränkungen gelten für SQL Server-Lesereplikate in Amazon RDS:

  • Lesereplikate sind nur auf der SQL Server Enterprise Edition (EE)-Engine verfügbar.

  • Lesereplikate sind für SQL Server-Versionen 2016 und 2017 verfügbar.

  • Die zu replizierende Quell-DB-Instance muss eine Multi-AZ-Bereitstellung mit Always On-Verfügbarkeitsgruppen sein.

  • Lesereplikate sind nur für DB-Instances auf der EC2-VPC-Plattform verfügbar.

  • Lesereplikate sind nur für DB-Instances verfügbar, die auf DB-Instance-Klassen mit vier oder mehr vCPUs ausgeführt werden.

  • Folgendes wird in Amazon RDS for SQL Server nicht unterstützt:

    • Erstellen eines Lesereplikats in einer anderen AWS-Region (ein regionsübergreifendes Lesereplikat)

    • Backup-Aufbewahrung von Lesereplikaten

    • Zeitpunktbezogene Wiederherstellung aus Lesereplikaten

    • Manuelle Snapshots von Lesereplikaten

    • Multi-AZ-Lesereplikate

    • Erstellen von Lesereplikaten aus Lesereplikaten

    • Synchronisierung von Benutzeranmeldungen bei Lesereplikaten

  • Amazon RDS for SQL Server greift nicht ein, um eine hohe Replikationsverzögerung zwischen einer Quell-DB-Instance und ihren Lesereplikaten zu minimieren. Stellen Sie sicher, dass die Quell-DB-Instance und ihre Lesereplikate in Bezug auf Rechen- und Speicherkapazität die für ihre Betriebslast angemessene Größe aufweisen.

  • Ein SQL Server-Lesereplikat gehört zur gleichen Optionsgruppe wie die Quell-DB-Instance. Änderungen an der Quell-Optionsgruppe oder Quell-Optionsgruppenmitgliedschaft werden von den Lesereplikaten übernommen. Diese Änderungen werden unmittelbar, nachdem sie auf die Quell-DB-Instance angewandt wurden, auf die Lesereplikate angewandt, ungeachtet des Wartungsfensters des Lesereplikats.

    Weitere Informationen über Optionsgruppen finden Sie unter Arbeiten mit Optionsgruppen.

Fehlerbehebung für ein Problem mit einem SQL Server-Read Replica

Sie können die Replikationsverzögerung in Amazon CloudWatch überwachen, indem Sie die Amazon RDS-Metrik ReplicaLag anzeigen. Weitere Informationen zur zeitlichen Verzögerung bei der Replikation finden Sie unter Überwachen der Lesereplikation.

Wenn Replikationsverzögerung zu groß ist, können Sie die folgende Abfrage verwenden, um Informationen über die Verzögerung abzurufen.

SELECT AR.replica_server_name , DB_NAME (ARS.database_id) 'database_name' , AR.availability_mode_desc , ARS.synchronization_health_desc , ARS.last_hardened_lsn , ARS.last_redone_lsn , ARS.secondary_lag_seconds FROM sys.dm_hadr_database_replica_states ARS INNER JOIN sys.availability_replicas AR ON ARS.replica_id = AR.replica_id --WHERE DB_NAME(ARS.database_id) = 'database_name' ORDER BY AR.replica_server_name;