TempDB-Konfiguration für Multi-AZ-Bereitstellungen - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

TempDB-Konfiguration für Multi-AZ-Bereitstellungen

Wenn sich Ihre RDS SQL Server-DB-Instance in einer Multi-AZ-Bereitstellung befindet, die Database Mirroring (DBM) oder Always On Availability Groups (AGs) verwendet, sollten Sie bei der Verwendung der Datenbank die folgenden Überlegungen berücksichtigen. tempdb

Sie können keine tempdb Daten von Ihrer primären DB-Instance auf Ihre sekundäre DB-Instance replizieren. Wenn Sie ein Failover zu einer sekundären DB-Instance durchführen, tempdb ist diese sekundäre DB-Instance leer.

Sie können die Konfiguration der tempdb Datenbankoptionen, einschließlich der Einstellungen für Dateigröße und automatische Vergrößerung, von Ihrer primären DB-Instance mit Ihrer sekundären DB-Instance synchronisieren. Das Synchronisieren der tempDB Konfiguration wird auf allen RDS For SQL Server-Versionen unterstützt. Sie können die automatische Synchronisation der tempdb Konfiguration mithilfe der folgenden gespeicherten Prozedur aktivieren:

EXECUTE msdb.dbo.rds_set_system_database_sync_objects @object_types = 'TempDbFile';
Wichtig

Bevor Sie die rds_set_system_database_sync_objects gespeicherte Prozedur verwenden, stellen Sie sicher, dass Sie Ihre bevorzugte tempdb Konfiguration auf Ihrer primären DB-Instance und nicht auf Ihrer sekundären DB-Instance festgelegt haben. Wenn Sie die Konfigurationsänderung auf Ihrer sekundären DB-Instance vorgenommen haben, könnte Ihre bevorzugte tempdb Konfiguration gelöscht werden, wenn Sie die automatische Synchronisation aktivieren.

Sie können die folgende Funktion verwenden, um zu überprüfen, ob die automatische Synchronisation der tempdb Konfiguration aktiviert ist:

SELECT * from msdb.dbo.rds_fn_get_system_database_sync_objects();

Wenn die automatische Synchronisation der tempdb Konfiguration aktiviert ist, gibt es einen Rückgabewert für das object_class Feld. Wenn es ausgeschaltet ist, wird kein Wert zurückgegeben.

Sie können die folgende Funktion verwenden, um zu ermitteln, wann Objekte das letzte Mal synchronisiert wurden, und zwar UTC rechtzeitig:

SELECT * from msdb.dbo.rds_fn_server_object_last_sync_time();

Wenn Sie beispielsweise die tempdb Konfiguration um 01:00 Uhr geändert und dann die rds_fn_server_object_last_sync_time Funktion ausgeführt haben, last_sync_time sollte der zurückgegebene Wert nach 01:00 Uhr liegen, was darauf hinweist, dass eine automatische Synchronisation stattgefunden hat.

Wenn Sie auch die SQL Server-Agent-Jobreplikation verwenden, können Sie die Replikation sowohl für SQL Agent-Jobs als auch für die tempdb Konfiguration aktivieren, indem Sie sie im @object_type folgenden Parameter angeben:

EXECUTE msdb.dbo.rds_set_system_database_sync_objects @object_types = 'SQLAgentJob,TempDbFile';

Weitere Informationen zur Replikation von SQL Server-Agent-Aufträgen finden Sie unterDie SQL Server-Agent-Auftragsreplikation wird aktiviert.

Als Alternative zur Verwendung der rds_set_system_database_sync_objects gespeicherten Prozedur, um sicherzustellen, dass tempdb Konfigurationsänderungen automatisch synchronisiert werden, können Sie eine der folgenden manuellen Methoden verwenden:

Anmerkung

Wir empfehlen, die automatische Synchronisation der tempdb Konfiguration mithilfe der rds_set_system_database_sync_objects gespeicherten Prozedur zu aktivieren. Durch die automatische Synchronisation müssen Sie diese manuellen Aufgaben nicht jedes Mal ausführen, wenn Sie Ihre tempdb Konfiguration ändern.

  • Ändern Sie zuerst die DB-Instance und deaktivieren Sie Multi-AZ. Dann modifizieren Sie "tempdb" und aktivieren abschließend wieder Multi-AZ. Durch diese Methode entsteht keine Ausfallzeit.

    Weitere Informationen finden Sie unter Ändern einer Amazon RDS DB-Instance.

  • Ändern Sie zuerst tempdb auf der ursprünglichen primären Instance, führen Sie dann manuell ein Failover durch, und ändern Sie dann tempdb auf der neuen primären Instance. Bei dieser Methode kommt es zu einem Ausfall.

    Weitere Informationen finden Sie unter Neustarten einer DB-Instance.