O SQL Server já exclui arquivos antigos de log de erros?

12

Sei que posso alternar facilmente o log de erros atual executando sp_cycle_errorlog, mas estou pensando se o SQL Server excluirá os arquivos de log de erros antigos / arquivados. Não consigo encontrar uma resposta para isso em nenhum lugar ...

tuseau
fonte

Respostas:

19

Em SQL Server Management Studio, em Object Explorer> Management, há uma configuração se você clicar com o botão direito do mouse SQL Server Logse selecionar Configure. Você pode especificar quantos arquivos de log você deseja manter. Quando atingir esse número, começará a remover os antigos.

insira a descrição da imagem aqui

Kenneth Fisher
fonte
8

Reinicie o SQL Server 7 vezes. Você verá que ainda possui apenas 7 ERRORLOG*arquivos (dependendo da versão). Este é o arquivo de log atual e os 6 arquivos de log mais recentes.

Nota: Pode ser necessário alterar 7 para outra coisa, caso você altere o número de logs de erros que o SQL Server mantém . O máximo, acredito, é 99. Mas não importa qual seja sua configuração atual, ela eventualmente reciclará e limpará arquivos antigos.

Eu testei isso e, se você desmarcar a caixa que diz:

☐ Limite o número de arquivos de log de erros antes de serem reciclados

... o que implica (pelo menos para mim) manter todos os arquivos de log , ele ainda manterá apenas o arquivo de log de erros atual mais 6 backups . Se você alterou a chave do registro que o @RLF apontou , a configuração da chave do registro substitui (como se você não tivesse desmarcado a caixa), mas você ainda estará limitado a um número de arquivos de log de erro de backup entre 6 e 99.

Portanto, a resposta curta é: sim, em todos os casos, o SQL Server acabará por excluir os antigos arquivos de log de erros.

Aaron Bertrand
fonte
7

O SQL Server recicla os logs de erro automaticamente, desde que você o configure corretamente.

Consulte http://msdn.microsoft.com/en-us/library/ms177285.aspx . Copiei os pontos mais importantes abaixo:

No Pesquisador de Objetos, expanda a instância do SQL Server, expanda Gerenciamento, clique com o botão direito do mouse em Logs do SQL Server e clique em Configurar.

Na caixa de diálogo Configurar Logs de Erros do SQL Server, escolha entre as seguintes opções.

  • Limite o número dos arquivos de log de erros antes de serem reciclados

    • Marque para limitar o número de logs de erros criados antes de serem reciclados. Um novo log de erros é criado sempre que uma instância do SQL Server é iniciada. O SQL Server mantém backups dos seis logs anteriores, a menos que você marque essa opção e especifique um número máximo diferente de arquivos de log de erro abaixo.
  • Número máximo de arquivos de log de erros

    • Especifique o número máximo de arquivos de log de erros criados antes de serem reciclados. O padrão é 6, que é o número de logs de backup anteriores que o SQL Server retém antes de reciclá-los.
Max Vernon
fonte
2

Sim, há uma configuração para quantos logs de erro manter.

Pode ser encontrado na chave do registro em:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\NumErrorLogs

Pode ser necessário adicionar essa chave.

RLF
fonte
1
Observe que você precisa substituir a primeira instância de MSSQLServerpelo seu ID de instância, se for uma instância nomeada (por exemplo, MSSQL12.SQL2014para minha instância nomeada de 2014 denominada SQL2014).
Aaron Bertrand