Diminuir arquivo de Transaction-log (LDF) do SQL Server nas versões 2000 e 2005


Vamos entender seu problema primeiramente. Se o arquivo de Transaction Log está crescendo provavelmente você ativou o Recovery Full (padrão, quando você cria um novo database no SQL Server) e não está fazendo seus backups incrementais.
Se você quiser alterar seu banco para não gerar mais esses logs, você pode entrar em propriedades no database, selecionar a opção Options e mudar no combo recovery para a opção Simple. Outra possibilidade, e a mais correta em ambientes de produção seria a implementação dos backups incrementais.


IMAGEM:1a.jpg

Vamos antes de mais nada resolver o problema eliminando o log e diminuir o tamanho do arquivo:
Ao conectar no banco de dados, execute o comando abaixo, trocando o <DATABASE> pelo nome do banco de dados que você quer.
1 – Eliminando o log
USE
<DATABASE>

BACKUP
LOG
<DATABASE>
with truncate_only

2- Diminuindo o arquivo físico
Ao executar o comando abaixo pegue o nome do arquivo de log e troque no comando a seguir:
Para fazer isso execute o comando a procedure SP_helfile pegando a coluna name, lembre-se que todo banco tem 2 arquivos 1 de dados e outro de log, para isso olhe na coluna usage, se é Log mesmo.




IMAGEM:1b.jpg

Pegue o nome do log na coluna name, e troque no comando abaixo por <ARQUIVO_LOG>
DBCC Shrinkfile(<ARQUIVO_LOG>,1)

Ele vai fazer com que seu arquivo físico fique com 1Mb, esse numero poderá ser alterado conforme a necessidade do tamanho inicial do log.

Veja o exemplo abaixo com o meu banco "Auditoria":

use auditoria

backup
log auditoria with truncate_only

dbcc shrinkfile('Auditoria_log',1)

Esse arquivo poderá crescer novamente, portanto você poderá incluir no backup full o comando "Backup log <DATABASE> with truncate_only" pois em caso de perda você poderá usar o seu backup full para restore, e como resultado seu arquivo de log só ira crescer o suficiente do dia.

Comentários

Postagens mais visitadas deste blog

ORACLE: Remoção dos agendamentos do Statspack

Usuários no Linux e UNIX