Tuf filen och logshipping


Tag : Logshipping,SQL,SQL Server,SQL Server Agent

När logshipping databasen är i läsbart läge/standby mode kommer SQL server skapa en så kallad TUF fil (Microsoft SQL Server Transaction Undo file). Den filen håller koll på de transaktioner som inte är comittade vid senaste transaktionslogg backupen. Detta för att kunna ha databasen i ett read only läge och fortsätta läsa på transaktions filer. Så länge transaktionen inte är klar eller tillbaka rullad kommer den finnas i tuf filen.

Det finns en risk för detta om det körs en väldigt stor transaktion när loggbackupen går och ska läsas in kan denna fil bli väldigt stor. Skulle filen då göra så disken blir full så stannar loggshippingen.

Finns då två utvägar, antingen så bygger man ut disken om det är möjligt eller så läser man på alla transaktionsloggar som en vanlig restore with norecovery, genoma att ändra i konfiguratioen i logshippingen och kör jobbet för Ls_restore, eller så kör man en "vanlig" restore with norecovery av trn filerna.

Flyttar undan den TUf fil som växt för mycket ändrar tillbaka konfiguration till standby läge om det behövs och sen kör ls_restore jobbet med standby.
I det senare fallet tänk då på att transaktionen som ställt till problem måste blivit commitad innan det går att köra with standby igen.

Finns även en annan fil som syns i logshipping sammanhang och det är .wrk detta är en trn filen under kopiering så inte SQL Server försöker göra restore på en fil som inte är helt färdigkopierad. Så fort den är på plats döps den om till .trn och kan läsas på av logshipping jobbet.



About

Det här är min digitala anteckningsbok för allt som har med databaser, automatisering och teknik att göra.
Här samlar jag alla de där skripten, lösningarna och knepen jag byggt på mig under åren – främst inom SQL Server och PowerShell.
Istället för att de ska ligga och damma i en glömd mapp delar jag med mig av dem här, så att både jag själv (när minnet sviker) och du förhoppningsvis kan spara några timmars klickande.