Freigeben über


Hinzufügen von persistentem Protokollpuffer zu einer Datenbank

Gilt für: SQL Server

In diesem Thema wird beschrieben, wie Sie einer Datenbank in SQL Server 2019 (15.x) und höher mithilfe von Transact-SQL einen permanenten Protokollpuffer hinzufügen.

Berechtigungen

Erfordert die ALTER-Berechtigung für die Datenbank.

Konfigurieren des persistenten Speichergeräts (Linux)

Hier erfahren Sie mehr zum Konfigurieren eines persistenten Speichergeräts unter Linux.

Konfigurieren des persistenten Speichergeräts (Windows)

Hier erfahren Sie mehr zum Konfigurieren eines persistenten Speichergeräts unter Windows.

Hinzufügen eines persistenten Protokollpuffers zu einer Datenbank

Im folgenden Beispiel wird ein persistenter Protokollpuffer hinzugefügt.

ALTER DATABASE <MyDB> 
  ADD LOG FILE 
  (
    NAME = <DAXlog>, 
    FILENAME = '<Filepath to DAX Log File>', 
    SIZE = 20MB
  );

Zum Beispiel:

ALTER DATABASE WideWorldImporters 
  ADD LOG FILE 
  (
    NAME = wwi_log2, 
    FILENAME = 'F:/SQLTLog/wwi_log2.pldf', 
    SIZE = 20MB
  );

Die Größe der Protokolldatei liegt auf dem DAX-Volume bei 20 MB, unabhängig von der Größe, die für den ADD FILE-Befehl angegeben wird.

Das Volume oder die Bereitstellung der neuen Protokolldatei muss mit aktiviertem DAX (NTFS) formatiert oder mit der DAX-Option (XFS/EXT4) bereitgestellt werden.

Entfernen eines persistenten Protokollpuffers

Die Datenbank muss zum sicheren Entfernen eines persistenten Protokollpuffers im Einzelbenutzermodus abgelegt werden, um den persistenten Protokollpuffer zu leeren.

Im folgenden Beispiel wird ein persistenter Protokollpuffer entfernt.

ALTER DATABASE <MyDB> SET SINGLE_USER;
ALTER DATABASE <MyDB> REMOVE FILE <DAXlog>;
ALTER DATABASE <MyDB> SET MULTI_USER;

Zum Beispiel:

ALTER DATABASE WideWorldImporters SET SINGLE_USER;
ALTER DATABASE WideWorldImporters REMOVE FILE wwi_log2;
ALTER DATABASE WideWorldImporters SET MULTI_USER;

Begrenzungen

Transparent Data Encryption (TDE) ist nicht mit dem persistenten Protokollpuffer kompatibel.

Verfügbarkeitsgruppen können diese Funktion nur auf sekundären Replikaten verwenden, da der Protokolllese-Agent auf dem primären System eine Standardprotokollschreibsemantik benötigt. Allerdings muss die kleine Protokolldatei auf allen Knoten erstellt werden (idealerweise auf DAX-Volumes oder -Bereitstellungen). Im Falle eines Failovers muss der permanente Protokollpufferpfad vorhanden sein, damit das Failover erfolgreich ausgeführt werden kann.

In Fällen, in denen der Pfad oder die Datei während eines Failover-Ereignisses der Verfügbarkeitsgruppe oder des Datenbankstarts nicht vorhanden ist, geht die Datenbank in einen RECOVERY PENDING-Status, bis das Problem behoben wurde.

Interoperabilität mit anderen-Funktionen

Wenn sowohl der permanente Protokollpuffer als auch der Hybridpufferpool gemeinsam aktiviert sind, zusammen mit dem Start Ablaufverfolgungsflag 809, wird der Hybridpufferpool im sogenannten Direct Write-Modus ausgeführt.

Operationen der Sicherung und Wiederherstellung

Es gelten normale Wiederherstellungsbedingungen. Wenn persistenter Protokollpuffer in einem DAX-Volume wieder hergestellt oder bereitgestellt wird, kann er weiterhin verwendet oder andernfalls sicher entfernt werden.

Nächste Schritte