Eu tenho uma situação agora.
Existe um banco de dados no modelo de recuperação SIMPLE.
Nota:
1. A compactação não está habilitada, o que será habilitado em breve. 2. SQL Server 2012 SP3
BackupSize: 8GB (Usually)<br/>
Last Saturday BackupSize: 73GB (yes, 73 !!)
Isso ocorre por causa de um aplicativo que deixou 2 transações abertas.
No momento, o arquivo LOG é de 154 GB.
Transaction: So far it inserted 90M records to a not so large table)
Pergunta:
- Em um backup FULL, quanta informação de LOG é registrada se houver uma transação aberta?
- Quando o backup FULL é restaurado, ele ROLLBACK as ações pela transação OPEN?
- Em caso afirmativo, por que o backup FULL se preocupa em fazer backup do LOG para uma transação OPEN quando ainda está aberto após a conclusão do backup (embora em um modelo de recuperação SIMPLES).
- Se eu matar o spid do SQL Server, ele precisa de mais espaço de LOG para ROLLBACK? Já estamos sem espaço aqui!!
A resposta à sua pergunta está neste blog por Paul Randal
Sim, se a transação não tiver sido confirmada quando o backup completo for concluído, ela será revertida quando o backup for restaurado, simplesmente, porque o SQL Server não tem ideia sobre o "estado da transação" quando o backup foi concluído antes da transação confirmada/concluída. Por favor, leia abaixo para mais detalhes
Noções básicas sobre backups no SQL Server
Como dito acima, porque ele não tem nenhuma ideia sobre o estado da transação, como se ela será confirmada ou revertida e como as transações no SQL Server são gravadas primeiro no log de transações antes das alterações serem feitas nas páginas do backup, ele faz seu trabalho de backup crie logs de transações suficientes para que, se a transação for confirmada, ela possa trazer o banco de dados para um estado consistente após o backup ser restaurado e se a transação não for confirmada antes do backup ser concluído, os backups serão considerados não confirmados e quando serão restaurados não haverá informações sobre alterações feitas por essa transação no banco de dados restaurado.
Leia o primeiro mito apontado por Paul Randal
Sim, ele precisa de espaço no arquivo de log de transações para reverter. A reversão é principalmente de encadeamento único e desfaz o que a transação fez.
Rollback: O que acontece quando você mata uma sessão