Dela via


Säkerhetskopior av transaktionsloggar (SQL Server)

Gäller för:SQL Server

Den här artikeln är endast relevant för SQL Server-databaser som använder de fullständiga eller massloggade återställningsmodellerna. I den här artikeln beskrivs hur du säkerhetskopierar transaktionsloggen för en SQL Server-databas.

Du måste ha skapat minst en fullständig säkerhetskopia innan du kan skapa loggsäkerhetskopior. Därefter kan transaktionsloggen säkerhetskopieras när som helst om inte loggen redan säkerhetskopieras.

Vi rekommenderar att du gör loggsäkerhetskopior ofta, både för att minimera exponeringen för arbetsförluster och för att trunkera transaktionsloggen.

En databasadministratör skapar vanligtvis en fullständig databassäkerhetskopia ibland, till exempel varje vecka, och skapar, om du vill, en serie differentiella databassäkerhetskopior med ett kortare intervall, till exempel dagligen. Oberoende av databassäkerhetskopiorna säkerhetskopierar databasadministratören transaktionsloggen med jämna mellanrum. För en viss typ av säkerhetskopiering beror det optimala intervallet på faktorer som vikten av data, databasens storlek och serverns arbetsbelastning. Mer information om hur du implementerar en bra strategi finns i Rekommendationer i den här artikeln.

Så här fungerar en sekvens med loggsäkerhetskopior

Sekvensen för loggkedjan för säkerhetskopiering av transaktionsloggar är oberoende av datasäkerhetskopior. Anta till exempel följande sekvens av händelser.

Time Event
08:00 Säkerhetskopiera databasen.
Middag Säkerhetskopiera transaktionsloggen.
16:00 Säkerhetskopiera transaktionsloggen.
18:00 Säkerhetskopiera databasen.
20:00 Säkerhetskopiera transaktionsloggen.

Säkerhetskopieringen av transaktionsloggen som skapades kl. 20:00 innehåller transaktionsloggposter från 16:00 till 20:00, vilket sträcker sig över tiden då den fullständiga databassäkerhetskopian skapades kl. 18:00. Sekvensen av säkerhetskopieringar av transaktionsloggar är kontinuerlig, från den första fullständiga databassäkerhetskopian som skapades kl. 08:00 till den senaste säkerhetskopieringen av transaktionsloggen som skapades kl. 20:00. Information om hur du tillämpar dessa loggsäkerhetskopior finns i exemplet i Använd säkerhetskopiering av transaktionsloggar (SQL Server).

Recommendations

Om en transaktionslogg är skadad går arbetet som utförs sedan den senaste giltiga säkerhetskopieringen förlorade. Därför rekommenderar vi starkt att du placerar loggfilerna på feltolerant lagring.

Om en databas är skadad eller om du håller på att återställa databasen rekommenderar vi att du skapar en säkerhetskopia i slutloggen så att du kan återställa databasen till den aktuella tidpunkten.

Försiktighet

Känt problem: För databaser med minnesoptimerade tabeller kan säkerhetskopiering av transaktionsloggar utan återställning och senare en återställning av transaktionsloggen med återställning resultera i en återställningsprocess som inte svarar. Det här problemet kan också påverka funktionen för loggleverans. För att undvika det här problemet kan SQL Server-instansen startas om innan återställningsprocessen initieras.

Som standard lägger varje lyckad säkerhetskopiering till en post i SQL Server-felloggen och i systemhändelseloggen. Om du säkerhetskopierar loggen mycket ofta ackumuleras dessa lyckade meddelanden snabbt, vilket resulterar i enorma felloggar som kan göra det svårt att hitta andra meddelanden. I sådana fall kan du utelämna dessa loggposter med hjälp av spårningsflagga 3226 om inget av dina skript är beroende av dessa poster. Mer information finns i Ange spårningsflaggor med DBCC TRACEON.

Använd tillräckligt många loggsäkerhetskopior för att stödja dina affärskrav, särskilt din tolerans för arbetsförluster, till exempel kan orsakas av en skadad logglagring.

  • Lämplig frekvens för att ta loggsäkerhetskopior beror på din tolerans för exponering för arbetsförlust som balanseras av hur många loggsäkerhetskopior du kan lagra, hantera och eventuellt återställa. Tänk på det nödvändiga målet för återställningstid (RTO) och mål för återställningspunkt (RPO) när du implementerar din återställningsstrategi, och särskilt loggsäkerhetskopiandens.

  • Det kan räcka med en loggsäkerhetskopia var 15:e till 30:e minut. Om ditt företag kräver att du minimerar exponeringen för arbetsförluster bör du överväga att göra loggsäkerhetskopior oftare. Mer frekventa loggsäkerhetskopior har den extra fördelen att öka loggtrunkeringens frekvens, vilket resulterar i mindre loggfiler.

Viktigt!

För att begränsa antalet loggsäkerhetskopior som du behöver återställa är det viktigt att regelbundet säkerhetskopiera dina data. Du kan till exempel schemalägga en fullständig databassäkerhetskopiering varje vecka och dagliga differentiella databassäkerhetskopior.
Tänk återigen på nödvändig RTO och RPO när du implementerar din återställningsstrategi, och särskilt den fullständiga och differentiella säkerhetskopieringen av databasen.