Voorkom ongewenste groei van SQL Transaction Log files

Zodra een SQL database wordt aangemaakt op de SQL server zal het standaard in een ‘pseudo simple recovery mode’ staan. Dit houdt in dat SQL zelf zal kijken of records in de transactie-log (de zgn. log-records)  nog gebruikt worden en zoniet, dan worden ze opgeruimd. Zodra er echter gebruik gemaakt gaat worden van SQL Full Backup dan wordt gekeken naar de instelling van de ‘Recovery model’ die standaard op ‘Full’ staat*. Hierdoor worden de ‘log-records’ pas opgeruimd als er ook ‘Transaction Log Backups’ gemaakt worden!

recoverymodelFull

Wijzigen van de ‘Recovery Mode’ naar “Simple” geeft de SQL server weer de optie om zelf de ‘log-records’ op te ruimen. (*) Om nieuwe databases op Recovery Mode ‘Simple” te hebben, kun je deze optie aanpassen in de ‘Model’ database. In de eigenschappen van elke database kan dit ingesteld worden in ‘Options’. Naast de instelling ‘Simple” kan o.a. de optie “Auto Shrink” op true gezet worden.

recoverymodelSimple

Vervolgens dient dan voor elke nieuwe database bepaald te worden welk Recovery Model ingesteld moet worden. De eerste basis-instelling voorkomt in ieder geval dat de transactie-log-bestanden te groot gaan groeien als er (nog) geen backups worden gemaakt.