Avamar: Trunkering av SQL-plugin-loggfiler krymper inte SQL-transaktionsloggfiler
Summary: SQL-säkerhetskopiering (Avamar Structured Query Language) trunkerar men krymper inte SQL Server loggar. Den markerar endast inaktiva virtuella loggfiler för återanvändning. Databasadministratörer (DBA) måste köra en krympning ...
Symptoms
Säkerhetskopiering av Avamar SQL-insticksprogram – observerat beteende
Administratörer kan lägga märke till följande under eller efter en säkerhetskopiering av Avamar SQL-insticksprogrammet:
- SQL-transaktionsloggen trunkeras, men dess fysiska filstorlek minskar inte.
- Trots att säkerhetskopieringen har slutförts behåller loggfilen den storlek som den hade före säkerhetskopieringen.
- Förväntningarna på att säkerhetskopieringen automatiskt ska krympa loggfilen uppfylls inte.
Cause
Missförstånd av SQL Transaction Log Management
Problemet beror på det felaktiga antagandet att Avamar SQL-insticksprogrammet trunkerar och krymper SQL-transaktionsloggfilerna under en säkerhetskopiering. I verkligheten signalerar Avamar bara till SQL att en fullständig säkerhetskopiering har gjorts, vilket gör att SQL kan trunkera loggen. Den utför ingen loggkrympningsåtgärd.
- SQL-trunkering markerar inaktiva virtuella loggfiler (VLF:er) som återanvändbara, men den fysiska filstorleken förblir oförändrad.
- Microsoft SQL Server standardlogik minskar aldrig storleken på den fysiska loggfilen efter trunkering.
- Parametrar för loggtillväxt (ursprunglig storlek, tillväxtökning, maximal storlek) styr filexpansion, inte minskning
- DBA:er förväntar sig ofta automatisk krympning, vilket leder till förvirring när loggfilerna behåller sin ursprungliga storlek.
Effekten av VLF-beteende
Varje VLF är den minsta enheten som kan markeras som aktiv eller inaktiv. Om en VLF innehåller obligatoriska loggposter förblir hela VLF aktiv, vilket förhindrar återanvändning av den delen av filen. Trunkering frigör endast helt inaktiva VLF:er. Filen komprimeras inte.
Typiska administrativa antaganden
- Förutsatt att en säkerhetskopieringsinitierad trunkering även krymper loggfilen.
- Förlita sig på Avamar för att hantera loggstorlek utan en separat krympningsrutin.
- Förbiser behovet av en schemalagd DBCC SHRINKFILE- eller hanteringskonsolkrympningsuppgift.
Resolution
Så här hanterar Avamar SQL-insticksprogrammet transaktionsloggfiler
Avamars SQL-insticksprogram trunkerar transaktionsloggen efter en säkerhetskopiering men krymper inte den fysiska loggfilen. DBA:er måste krympa loggen manuellt om en mindre filstorlek krävs.
Steg-för-steg-procedur för att krympa SQL-transaktionsloggar
- Bekräfta att den senaste Avamar-säkerhetskopieringen har slutförts.
- Kontrollera att loggtrunkeringen har inträffat (loggen är markerad som återanvändbar).
- Utför en manuell krympningsåtgärd med hjälp av SQL Server Management Studio (SSMS) eller ett T-SQL-skript.
- Schemalägg regelbundna krympningsuppgifter om kontinuerlig storleksminskning behövs.
Additional Information
Mer information om hur du krymper en Microsoft SQL-loggfil finns i:
- Krympning av transaktionsloggen (Extern länk)
- DBCC SHRINKFILE (Transact-SQL) (Extern länk)