Поделиться через


DBCC SHRINKLOG — система платформы аналитики (PDW)

Область применения: система платформы аналитики (PDW)

Уменьшает размер журнала транзакций на всем устройстве для текущей базы данных платформы Analytics Platform System (PDW). Для сжатия журнала транзакций данные дефрагментируются. Со временем журнал транзакций базы данных может становиться фрагментированным и неэффективным. Используется DBCC SHRINKLOG для уменьшения фрагментации и уменьшения размера журнала.

Соглашения о синтаксисе Transact-SQL

Синтаксис

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

Аргументы

SIZE = { target_size [ МБ | ГБ | ТБ ] } | ПО УМОЛЧАНИЮ

target_size — это требуемый размер журнала транзакций на всех вычислительных узлах после DBCC SHRINKLOG завершения. Это целое число больше нуля.

Размер журнала измеряется в мегабайтах (МБ), гигабайтах (ГБ) или терабайтах (ТБ). Это совокупный размер журнала транзакций во всех вычислительных узлах.

По умолчанию DBCC SHRINKLOG журнал транзакций уменьшается до размера журнала, хранящегося в метаданных базы данных. Параметр LOG_SIZE CREATE DATABASE (Azure Synapse Analytics) или ALTER DATABASE (Azure Synapse Analytics) определяет размер журнала в метаданных. DBCC SHRINKLOG уменьшает размер журнала транзакций до размера по умолчанию, если SIZE = DEFAULT указано или когда SIZE предложение опущено.

WITH NO_INFOMSGS

Информационные сообщения не отображаются в результатах DBCC SHRINKLOG .

Разрешения

Требует разрешения ALTER SERVER STATE.

Замечания

DBCC SHRINKLOG Не изменяет размер журнала, хранящийся в метаданных базы данных. Метаданные продолжают содержать параметр, указанный LOG_SIZE в CREATE DATABASE или ALTER DATABASE инструкции.

Примеры

А. Сжатие журнала транзакций до исходного размера, указанного CREATE DATABASE

Предположим, что журнал транзакций для Addresses базы данных был установлен на 100 МБ при Addresses создании базы данных. То есть, CREATE DATABASE заявление для Addresses этого.LOG_SIZE = 100 MB Теперь предположим, что журнал увеличивается до 150 МБ, и вы хотите уменьшить его до 100 МБ.

Каждая из следующих инструкций пытается уменьшить журнал транзакций для Addresses базы данных до размера по умолчанию 100 МБ. Если сокращение журнала до 100 МБ приведет к потере данных, DBCC SHRINKLOG сжать журнал до наименьшего размера, превышающего 100 МБ, без потери данных.

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