Como desativar log no SQL Server
Nesta semana tive alguns problemas com o log de transações do banco de dados, que ao rodar uma query apresentava o seguinte erro:
The transaction log for database 'x' is full. To find out why space in the log cannot be reused, [...]
Ou seja, o log de transações do banco de dados estava lotado, mas o banco estava com meros 50 Mb de tamanho, ou seja, queria desativar este log já que eu não o utilizo.
O log serve para exibir quais foram os códigos executados no banco, e existem dois tipos de logs (e não é possível desativar):
Simples (Simple) e Completa (Full).
A Full armazena todas as ações do banco em um log, e a simple descarta todas as alterações no banco assim que é realizado um checkpoint, ou melhor dizendo, a cada interação de script no banco de dados.
Para alterar entre as duas, utilize o comando:
ALTER DATABASE x SET RECOVERY SIMPLE;
ou para voltar a utilizar o log de transações (transaction log) completo, segue o comando:
ALTER DATABASE x SET RECOVERY FULL;
Sendo "x" a sua base de dados (database) contendo as tabelas.
Dica: Dependendo da versão do seu banco de dados, o comando necessita ser em capital (todas maiúsculas).
Segue um exemplo de erro quando a tabela de transação está "cheia", não permitindo realizar nenhuma operação com o banco de dados:
Nenhum comentário
Deixe seu comentário abaixo e curta Tutorial TI no facebook!