Al momento ho a che fare con un registro delle transazioni di SQL Server fuori controllo. Disclaimer: non sono un dba e questa non è la mia area di competenza, quindi per favore abbi pazienza con me.
Al momento ho un file di registro delle transazioni da 115 GB per un database da 500 MB che è stato (ovviamente) mal gestito da un po 'di tempo per arrivare in questo stato.
La massima priorità è recuperare lo spazio sul disco occupato da questo file prima che finiamo! Mi è stato detto che aumentare le dimensioni dell'unità non è un'opzione, nemmeno temporanea, e in base alla crescita passata, dobbiamo agire abbastanza presto.
A quanto ho capito, l'approccio migliore è mantenere il db in modalità di ripristino completo ma eseguire backup regolari del file di registro, monitorarlo per un periodo di tempo e regolare le dimensioni iniziali e l'incremento in base alle esigenze. Tutto ok.
Visto che eseguiamo regolarmente i backup completi del db a mezzanotte, sarebbe sicuro per me mettere temporaneamente il database in modalità di ripristino semplice (dopo l'esecuzione di uno di questi backup), ridurre il file di registro per recuperare (praticamente tutto) lo spazio e quindi reinserirlo in Full Recovery con la strategia di backup sopra menzionata?
Il mio pensiero è che se qualcosa accadesse in questo periodo, potremmo semplicemente ripristinare il backup completo senza usare i registri.
AGGIORNARE
Alcuni dettagli extra in risposta ad alcune delle risposte e dei commenti:
Vogliamo mantenere la possibilità di eseguire un ripristino temporizzato in modo che il database rimanga in modalità di ripristino completo.
Il motivo per cui il file t-log è diventato così grande è che non è mai stato eseguito il backup . Verificato come log_reuse_wait_desc restituisce 'LOG_BACKUP'.