Skip to main content

SQL Server Recovery Modeller: Tre alternativer

SQL Server 2016 Part 6 - Designing and Creating a Relational Database (April 2025)

SQL Server 2016 Part 6 - Designing and Creating a Relational Database (April 2025)
Anonim

SQL Server har tre gjenopprettingsmodeller som lar deg spesifisere måten SQL Server administrerer loggfiler og forbereder databasen for gjenoppretting etter tap av data eller annen katastrofe. Hver av disse representerer en annen tilnærming til å balansere avviket mellom å bevare diskplass og sørge for granulære gjenopprettingsalternativer. De tre katastrofegjenopprettingsmodellene som tilbys av SQL Server er:

  • Enkel
  • Full
  • Bulk-logget

La oss se nærmere på hver av disse modellene.

Enkel gjenopprettingsmodell

Den enkle gjenopprettingsmodellen er nettopp det: enkelt. I denne tilnærmingen opprettholder SQL Server bare en minimal mengde informasjon i transaksjonsloggen. SQL Server avkorter transaksjonsloggen hver gang databasen når et transaksjonskontrollpunkt, og etterlater ingen loggoppføringer for katastrofegjenoppretting.For databaser som bruker den enkle gjenopprettingsmodellen, kan du kun gjenopprette full eller differensiell sikkerhetskopiering. Det er ikke mulig å gjenopprette en slik database til et gitt tidspunkt - du kan bare gjenopprette det til den nøyaktige tiden da en full eller differensiell sikkerhetskopiering skjedde. Derfor vil du automatisk miste eventuelle dataendringer som er gjort mellom tidspunktet for den siste full / differensielle backup og tidspunktet for feilen.

Full gjenopprettingsmodell

Den komplette gjenopprettingsmodellen har også et selvbetegnende navn. Med denne modellen beholder SQL Server transaksjonsloggen til du sikkerhetskopierer den. Dette gjør det mulig å designe en plan for gjenoppretting av katastrofer som inkluderer en kombinasjon av fulle og differensielle databasekoblinger i forbindelse med transaksjonslogg-sikkerhetskopier.I tilfelle av en databasefeil, har du den mest fleksible gjenoppretting av databaser ved hjelp av full gjenopprettingsmodell. I tillegg til å bevare dataendringer som er lagret i transaksjonsloggen, kan hele gjenopprettingsmodellen gjenopprette en database til et bestemt tidspunkt. Hvis for eksempel en feilaktig modifikasjon ødela dataene dine klokken 02:36 på mandag, kan du bruke SQL Servers tilbakestilling for tid-i-tid for å rulle databasen din tilbake til kl. 02:35, og tømme effekten av feilen.

Bulk-logged Recovery Model

Den bulk-loggede gjenopprettingsmodellen er en spesialmodell som fungerer på samme måte som full gjenopprettingsmodell. Den eneste forskjellen er i måten den håndterer bulkdata modifikasjonsoperasjoner. Den bulkloggede modellen registrerer disse operasjonene i transaksjonsloggen ved hjelp av en teknikk kjent som minimal logging . Dette sparer betydelig på behandlingstid, men forhindrer deg i å bruke gjenopprettingsalternativet for punkt-i-tid.Microsoft anbefaler at den masseloggte gjenopprettingsmodellen bare brukes i korte perioder. Beste praksis dikterer at du bytter en database til den bulkloggte gjenopprettingsmodellen umiddelbart før du utfører bulkoperasjoner, og gjenoppretter den til full gjenopprettingsmodell når disse operasjonene fullføres.

Endre gjenopprettingsmodeller

Bruk SQL Server Management Studio til å vise eller endre gjenopprettingsmodellen:

  1. Velg den aktuelle serveren : Koble til den relevante forekomsten av SQL Server Database Engine, og klikk deretter på servernavnet i Object Explorer for å utvide servertreet.
  2. Velg databasen : Utviddatabaser, og, avhengig av databasen, enten velg en brukerdatabase eller utvideSystemdatabaser og velg en systemdatabase.
  3. Åpne databaseegenskapene : Høyreklikk databasen, og klikk deretterEiendommer, for å åpneDatabase Egenskaper dialogboks.
  4. Se gjeldende gjenopprettingsmodell : IVelg en side ruten, klikkalternativer for å vise gjeldendeGjenopprettingsmodell valg.
  5. Velg den nye gjenopprettingsmodellen : Velg entenFull, Bulk-logget, ellerEnkel.
  6. KlikkOK.