Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Ez a témakör bemutatja, hogyan állítható vissza a hibapontra. A témakör csak a teljes vagy tömegesen naplózott helyreállítási modelleket használó adatbázisok esetében releváns.
Helyreállítás a hiba bekövetkezési pontjára
A napló végének biztonsági mentéséhez futtassa a következő egyszerű BACKUP utasítást:
BACKUP LOG <database_name> TO <backup_device> WITH NORECOVERY, NO_TRUNCATE;A teljes adatbázis biztonsági mentésének visszaállítása az alábbi alaputasítás RESTORE DATABASE futtatásával:
RESTORE DATABASE <database_name> FROM <backup_device> WITH NORECOVERY;Ha szeretné, állítsa vissza a különbségi adatbázis biztonsági mentését az alábbi alaputasítás RESTOREDATABASE futtatásával:
RESTORE DATABASE <database_name> FROM <backup_device> WITH NORECOVERY;Alkalmazza az összes tranzakciónaplót, beleértve az 1. lépésben létrehozott naplóvég biztonsági mentését is, a RESTORE LOG utasításban a WITH NORECOVERY megadásával:
RESTORE LOG <database_name> FROM <backup_device> WITH NORECOVERY;Az adatbázis helyreállítása az alábbi RESTOREDATABASE utasítás futtatásával:
RESTORE DATABASE <database_name> WITH RECOVERY;
Példa
A példa futtatása előtt el kell végeznie a következő előkészületeket:
A
AdventureWorks2025adatbázis alapértelmezett helyreállítási modellje az egyszerű helyreállítási modell. Mivel ez a helyreállítási modell nem támogatja a hibapontra való visszaállítást, állítsa beAdventureWorks2025a teljes helyreállítási modellt a következő ALTER DATABASE utasítás futtatásával:USE master; GO ALTER DATABASE AdventureWorks2022 SET RECOVERY FULL;Hozzon létre egy teljes adatbázist az adatbázisból az alábbi BACKUP utasítással:
BACKUP DATABASE AdventureWorks2022 TO DISK = 'C:\AdventureWorks2022_Data.bck';Rutinnapló biztonsági mentésének létrehozása:
BACKUP LOG AdventureWorks2022 TO DISK = 'C:\AdventureWorks2022_Log.bck';
Az alábbi példa visszaállítja a korábban létrehozott biztonsági másolatokat a AdventureWorks2025 adatbázis tail-log biztonsági mentésének létrehozása után. (Ez a lépés feltételezi, hogy a naplólemez elérhető.)
Először a példa létrehoz egy vég-napló mentést az adatbázisról, amely rögzíti az aktív naplót, és Helyreállítási állapotban hagyja az adatbázist. Ezután a példa visszaállítja az adatbázis biztonsági mentését, alkalmazza a korábban létrehozott rutinnapló-biztonsági mentést, és alkalmazza a tail-log biztonsági mentést. Végül a példa egy külön lépésben helyreállítja az adatbázist.
Jegyzet
Az alapértelmezett viselkedés az adatbázis helyreállítása a végső biztonsági mentést visszaállító utasítás részeként.
/* Example of restoring a to the point of failure */
-- Step 1: Create a tail-log backup by using WITH NORECOVERY.
BACKUP LOG AdventureWorks2022
TO DISK = 'C:\AdventureWorks2022_Log.bck'
WITH NORECOVERY;
GO
-- Step 2: Restore the full database backup.
RESTORE DATABASE AdventureWorks2022
FROM DISK = 'C:\AdventureWorks2022_Data.bck'
WITH NORECOVERY;
GO
-- Step 3: Restore the first transaction log backup.
RESTORE LOG AdventureWorks2022
FROM DISK = 'C:\AdventureWorks2022_Log.bck'
WITH NORECOVERY;
GO
-- Step 4: Restore the tail-log backup.
RESTORE LOG AdventureWorks2022
FROM DISK = 'C:\AdventureWorks2022_Log.bck'
WITH NORECOVERY;
GO
-- Step 5: Recover the database.
RESTORE DATABASE AdventureWorks2022
WITH RECOVERY;
GO