Compartilhar via


DBCC SHRINKLOG (Parallel Data Warehouse)

Aplica-se a:PDW (Analytics Platform System)

Reduz o tamanho do log de transações no dispositivo para o banco de dados do PDW (Analytics Platform System) atual. Os dados são desfragmentados para reduzir o log de transações. Ao longo do tempo, o log de transações do banco de dados pode se tornar fragmentado e ineficiente. Use DBCC SHRINKLOG para reduzir a fragmentação e o tamanho do log.

Convenções de sintaxe de Transact-SQL

Sintaxe

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

Argumentos

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

target_size é o tamanho desejado para o log de transações em todos os nós de computação, após a conclusão de DBCC SHRINKLOG. É um número inteiro maior que 0.

O tamanho do log é medido em megabytes (MB), gigabytes (GB) ou terabytes (TB). É o tamanho combinado do log de transações em todos os nós de computação.

Por padrão, DBCC SHRINKLOG reduz o log de transações para o tamanho do log armazenado nos metadados do banco de dados. O tamanho do log nos metadados é determinado pelo parâmetro LOG_SIZE em CREATE DATABASE (Azure Synapse Analytics) ou ALTER DATABASE (Azure Synapse Analytics). SIZE reduz o tamanho do log de transações para o padrão quando DBCC SHRINKLOG é especificado ou quando a cláusula SIZE = DEFAULT é omitida.

WITH NO_INFOMSGS

As mensagens informativas não são exibidas nos resultados de DBCC SHRINKLOG.

Permissões

Requer a permissão ALTER SERVER STATE.

Comentários

DBCC SHRINKLOG não altera o tamanho do log armazenado nos metadados do banco de dados. Os metadados continuam a conter o parâmetro LOG_SIZE que foi especificado na instrução CREATE DATABASE ou ALTER DATABASE.

Exemplos

a. Reduzir o log de transações para o tamanho original especificado por CREATE DATABASE

Suponha que o log de transações do banco de dados Addresses tenha sido definido com 100 MB quando o banco de dados Addresses foi criado. Isso significa que a instrução CREATE DATABASE para Addresses tinha LOG_SIZE = 100 MB. Agora, vamos supor que o log tenha aumentado para 150 MB e que você deseje reduzi-lo novamente para 100 MB.

Cada uma das instruções a seguir tentará reduzir o log de transações do banco de dados Addresses para o tamanho padrão de 100 MB. Se a redução do log para 100 MB causar perda de dados, DBCC SHRINKLOG reduzirá o log para o menor valor de tamanho possível que seja maior que 100 MB, sem perda de dados.

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

Confira também