Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Bij een volledig databaseherstel is het doel om de hele database te herstellen. De hele database is offline voor de duur van de herstelbewerking. Voordat een deel van de database online kan komen, worden alle gegevens hersteld naar een consistent punt waarin alle onderdelen van de database zich op hetzelfde moment bevinden en er geen niet-doorgevoerde transacties bestaan.
Onder het eenvoudige herstelmodel kan de database niet worden hersteld naar een bepaald tijdstip binnen een specifieke back-up.
Belangrijk
U wordt aangeraden geen databases te koppelen of te herstellen uit onbekende of niet-vertrouwde bronnen. Deze databases kunnen schadelijke code bevatten die onbedoelde Transact-SQL code kan uitvoeren of fouten kan veroorzaken door het schema of de structuur van de fysieke database te wijzigen. Voordat u een database van een onbekende of niet-vertrouwde bron gebruikt, voert u DBCC CHECKDB- uit op de database op een niet-productieserver en onderzoekt u ook de code, zoals opgeslagen procedures of andere door de gebruiker gedefinieerde code, in de database.
In dit onderwerp:
Opmerking
Zie de sectie Compatibiliteitsondersteuning van RESTORE (Transact-SQL) voor informatie over ondersteuning voor back-ups van eerdere versies van SQL Server.
Overzicht van databaseherstel onder het eenvoudige herstelmodel
Een volledig databaseherstel onder het eenvoudige herstelmodel omvat een of twee RESTORE-instructies , afhankelijk van of u een differentiële databaseback-up wilt herstellen. Als u alleen een volledige databaseback-up gebruikt, herstelt u de meest recente back-up, zoals wordt weergegeven in de volgende afbeelding.
Als u ook een differentiële databaseback-up gebruikt, herstelt u de meest recente volledige databaseback-up zonder de database te herstellen en herstelt u vervolgens de meest recente back-up van de differentiële database en herstelt u de database. In de volgende afbeelding ziet u dit proces.
Opmerking
Als u van plan bent om een databaseback-up te herstellen naar een ander serverexemplaar, raadpleegt u Databases kopiëren met Back-up en Herstellen.
Basic Transact-SQL RESTORE-syntaxis
De eenvoudige Transact-SQLRESTORE-syntaxis voor het herstellen van een volledige databaseback-up is:
DATABASE database_name HERSTELLEN VAN backup_device [ WITH NORECOVERY ]
Opmerking
Gebruik WITH NORECOVERY als u van plan bent om ook een differentiële databaseback-up te herstellen.
De basissyntaxis VOOR HERSTELLEN voor het herstellen van een databaseback-up is:
HERSTEL DATABASE database_name VAN backup_device MET RECOVERY
Voorbeeld (Transact-SQL)
In het volgende voorbeeld ziet u eerst hoe u de INSTRUCTIE BACKUP gebruikt om een volledige databaseback-up en een differentiële databaseback-up van de AdventureWorks2025 database te maken. In het voorbeeld worden deze back-ups vervolgens op volgorde hersteld. De database wordt hersteld naar de status vanaf het moment dat de back-up van de differentiële database is voltooid.
In het voorbeeld ziet u de kritieke opties in een herstelvolgorde voor het volledige scenario voor databaseherstel. Een herstelvolgorde bestaat uit een of meer herstelbewerkingen die gegevens door een of meer van de fasen van het herstel verplaatsen. Syntaxis en details die niet relevant zijn voor dit doel worden weggelaten. Wanneer u een database herstelt, wordt u aangeraden expliciet de optie HERSTEL op te geven, ook al is dit de standaardinstelling.
Opmerking
Het voorbeeld begint met een ALTER DATABASE-instructie waarmee het herstelmodel wordt ingesteld op SIMPLE.
USE master;
--Make sure the database is using the simple recovery model.
ALTER DATABASE AdventureWorks2022 SET RECOVERY SIMPLE;
GO
-- Back up the full AdventureWorks2022 database.
BACKUP DATABASE AdventureWorks2022
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2022.bak'
WITH FORMAT;
GO
--Create a differential database backup.
BACKUP DATABASE AdventureWorks2022
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2022.bak'
WITH DIFFERENTIAL;
GO
--Restore the full database backup (from backup set 1).
RESTORE DATABASE AdventureWorks2022
FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2022.bak'
WITH FILE=1, NORECOVERY;
--Restore the differential backup (from backup set 2).
RESTORE DATABASE AdventureWorks2022
FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2022.bak'
WITH FILE=2, RECOVERY;
GO
Gerelateerde taken
Een volledige databaseback-up herstellen
Een databaseback-up herstellen onder het eenvoudige herstelmodel (Transact-SQL)
Een database herstellen naar een nieuwe locatie (SQL Server)
Een back-up van een differentiële database herstellen
Een back-up herstellen met behulp van SMO (SQL Server Management Objects)
Zie ook
RESTORE (Transact-SQL)
BACKUP (Transact-SQL)
sp_addumpdevice (Transact-SQL)
Volledige databasebackups (SQL Server)
differentiële back-ups (SQL Server)
Overzicht van back-up (SQL Server)
Overzicht van terugzetten en herstellen (SQL Server)