SQL Server har tre återställningsmodeller; enkel, fullständig och bulkloggad. Varje databas använder en av dessa inställningar.
Säkerhetskopiering och återställning sker inom ramen för databasens återställningsmodell
Du kan ändra återställningsmodellen för en databas genom att använda ALTER DATABASE
uttalande tillsammans med SET RECOVERY
alternativ.
De tillgängliga alternativen när du använder ALTER DATABASE
för att ställa in återställningsmodellen är:
SIMPLE
FULL
BULK_LOGGED
Du behöver ALTER
behörigheter på databasen för att göra sådana ändringar.
Exempel
Anta att vi har en databas som heter PetHotel
.
Vi kan kontrollera dess nuvarande återställningsmodell genom att fråga sys.databases
katalogvy:
SELECT
name,
recovery_model_desc
FROM sys.databases
WHERE name = 'PetHotel';
Resultat:
+----------+-----------------------+ | name | recovery_model_desc | |----------+-----------------------| | PetHotel | SIMPLE | +----------+-----------------------+
PetHotel
databasen använder för närvarande den enkla återställningsmodellen.
Låt oss ändra den till den fullständiga återställningsmodellen:
USE master;
ALTER DATABASE PetHotel
SET RECOVERY FULL;
Klart.
Låt oss nu kontrollera resultatet:
SELECT
name,
recovery_model_desc
FROM sys.databases
WHERE name = 'PetHotel';
Resultat:
+----------+-----------------------+ | name | recovery_model_desc | |----------+-----------------------| | PetHotel | FULL | +----------+-----------------------+
Återställningsmodellen har ändrats enligt specifikationen.
Viktigt att tänka på
När du byter från enkelt återställningsläge till ett av de andra, träder bytet i kraft först efter den första säkerhetskopieringen av data.
Så snart du byter från enkelt återställningsläge till antingen den fullständiga eller bulkloggade återställningsmodellen bör du därför ta en fullständig eller differentiell databassäkerhetskopiering för att starta loggkedjan.
Om du byter till den enkla återställningsmodellen, se till att inaktivera alla schemalagda jobb för säkerhetskopiering av transaktionsloggen (den enkla återställningsmodellen använder inte loggbackuper).
Bulkåtervinningsmodellen är också specifikt för bulkoperationer. Om du byter från modellen för fullständig återställning till bulkloggningsmodellen för detta ändamål, bör du byta tillbaka till fullständig återställningsläge när du har utfört massåtgärderna.
När du har bytt från den bulkloggade återställningsmodellen tillbaka till den fullständiga återställningsmodellen, se till att säkerhetskopiera loggen.
Se Återställningsmodeller på Microsofts webbplats för en översikt över varje återställningsmodell.