Freigeben über


DBCC SHRINKLOG (Parallel Data Warehouse)

Gilt für:Analytics Platform System (PDW)

Reduziert die Größe des Transaktionsprotokolls anwendungsübergreifend für die aktuelle PDW-Datenbank (Analytics Platform System). Die Daten werden defragmentiert, um das Transaktionsprotokoll zu verkleinern. Mit der Zeit kann es sein, dass das Datenbanktransaktionsprotokoll zu viele Bestandteile hat und dadurch nicht effizient verwendet werden kann. Verwenden Sie DBCC SHRINKLOG, um diese Fragmentierung und damit auch die Protokollgröße zu verringern.

Transact-SQL-Syntaxkonventionen

Syntax

DBCC SHRINKLOG
    [ ( SIZE = { target_size [ MB | GB | TB ]  } | DEFAULT ) ]
    [ WITH NO_INFOMSGS ]
[;]

Argumente

SIZE = { target_size [ MB | GB | TB ] } | DEFAULT

target_size ist die gewünschte Größe des Transaktionsprotokolls auf sämtlichen Computeknoten, nachdem DBCC SHRINKLOG abgeschlossen wurde. Dabei handelt es sich um einen Integer größer als 0 (null).

Die Protokollgröße wird in Megabyte (MB), Gigabyte (GB) oder Terabyte (TB) angegeben. Dabei handelt es sich um die Gesamtgröße aller Transaktionsprotokolle auf den Computeknoten.

Standardmäßig reduziert DBCC SHRINKLOG das Transaktionsprotokoll auf die Protokollgröße, die in den Metadaten der Datenbank gespeichert ist. Die Protokollgröße in den Metadaten wird von dem LOG_SIZE-Parameter in CREATE DATABASE (Azure Synapse Analytics) oder ALTER DATABASE (Azure Synapse Analytics) bestimmt. DBCC SHRINKLOG reduziert die Größe des Transaktionsprotokolls, wenn SIZE = DEFAULT angegeben oder die SIZE-Klausel weggelassen wird.

WITH NO_INFOMSGS

Informationsmeldungen werden nicht in den DBCC SHRINKLOG-Ergebnissen angezeigt.

Berechtigungen

Erfordert die ALTER SERVER STATE-Berechtigung.

Bemerkungen

DBCC SHRINKLOG ändert nicht die Protokollgröße, die in den Metadaten der Datenbank gespeichert ist. Die Metadaten enthalten weiterhin den LOG_SIZE-Parameter, der in den Anweisungen CREATE DATABASE oder ALTER DATABASE angegeben wurde.

Beispiele

A. Reduzieren Sie das Transaktionsprotokoll auf die ursprüngliche von CREATE DATABASE angegebene Größe.

Angenommen, das Transaktionsprotokoll für die Addresses-Datenbank wurde bei der Erstellung der Addresses-Datenbank auf 100 MB festgelegt. Das heißt, die CREATE DATABASE-Anweisung für Addresses hatte LOG_SIZE = 100 MB. Jetzt hat die Größe des Protokolls allerdings 150 MB erreicht und Sie möchten diese wieder auf 100 MB reduzieren.

Sie können eine der folgenden Anweisungen verwenden, um zu versuchen, das Transaktionsprotokoll der Addresses-Datenbank auf seine Standardgröße von 100 MB zu verkleinern. Wenn das Verkleinern des Protokolls auf 100 MB zu Datenverlusten führen würde, verkleinert DBCC SHRINKLOG es so weit wie möglich auf eine Größe von mehr als 100 MB, wobei jedoch keine Daten verloren gehen.

USE Addresses;
GO
DBCC SHRINKLOG ( SIZE = 100 MB );
GO
DBCC SHRINKLOG ( SIZE = DEFAULT );
GO
DBCC SHRINKLOG;
GO

Weitere Informationen