
Eu hospedo um site e às vezes recebo um erro: The log file for database '%.*ls' is full.
e preciso entrar em contato com meu provedor de hospedagem para limpar o arquivo de log do banco de dados.
Como posso desabilitar o log ou configurá-lo para garantir que o arquivo de log não seja preenchido?
(Estou usando o mecanismo do Community Server, portanto a otimização do SQL não deve ser feita.)
Responder1
O arquivo de log depende do modelo de recuperação do banco de dados. O padrão é Completo, o que significa que você fará backups do banco de dados e do log de transações. Quando você faz backup do log de transações, ele será truncado. Se você nunca fizer backup do log de transações, ele crescerá para sempre. Se você deseja fazer backup apenas do banco de dados completo, altere o modelo de recuperação para simples.
Depois que isso for alterado, você desejará reduzir os arquivos de log (clique com o botão direito do mouse no banco de dados no SQL Management Studio, Tarefas > Reduzir > Arquivos). Você pode configurá-los para redução automática, mas depois de corrigir o problema do modelo de recuperação subjacente, talvez não seja necessário.
Responder2
Isso se refere ao log de transações, não a um log de erros, e que não pode ser desabilitado no SQL Server. Cada transação é gravada no log de transações antes de gravar uma alteração no próprio banco de dados para proteger a integridade do banco de dados. Se o banco de dados estiver usando o modelo de recuperação completa (que parece ser o seu), os registros do log de transações só serão substituídos após um backup do log de transações (não um backup completo); se você alterar o modelo de recuperação para simples, os registros de log serão mantidos por um período mais curto e os backups do log de transações não serão necessários. Dependendo do seu provedor de hospedagem, entretanto, isso pode estar fora de seu controle; você teria que verificar quanto controle eles oferecem sobre as configurações do banco de dados e solicitar a alteração se não tiver controle direto.