esemény
márc. 31. 23 - ápr. 2. 23
A legnagyobb SQL, Fabric és Power BI tanulási esemény. Március 31. – Április 2. A FABINSIDER kóddal 400 dollárt takaríthat meg.
Regisztráljon még maEzt a böngészőt már nem támogatjuk.
Frissítsen a Microsoft Edge-re, hogy kihasználhassa a legújabb funkciókat, a biztonsági frissítéseket és a technikai támogatást.
A következőkre vonatkozik:SQL Server
Ez a témakör azt ismerteti, hogyan állíthat vissza adatbázist egy adott időpontra az SQL Serverben az SQL Server Management Studio vagy a Transact-SQL használatával. Ez a témakör csak a teljes vagy tömegesen naplózott helyreállítási modelleket használó SQL Server-adatbázisokra vonatkozik.
Fontos
A tömegesen naplózott helyreállítási modellben, ha a napló biztonsági mentése tömegesen naplózott módosításokat tartalmaz, az időponthoz kötött helyreállítás nem lehetséges a biztonsági mentés egy pontig. Az adatbázist a tranzakciónapló biztonsági mentésének végéig kell helyreállítani.
Kezdés előtt:
SQL Server-adatbázis adott időpontra való visszaállításához használja a következőt:
Az ismeretlen időpont megkereséséhez használja a STANDBY funkciót.
A visszaállítási sorozat korai időpontjának megadása
Ha a visszaállított adatbázis nem létezik, a felhasználónak CREATE DATABASE-engedélyekkel kell rendelkeznie a VISSZAÁLLÍTÁS végrehajtásához. Ha az adatbázis létezik, a RESTORE engedélyek alapértelmezés szerint biztosítva vannak a sysadmin és dbcreator rögzített szerver szerepkörökhöz, valamint az adatbázis tulajdonosának (dbo). (A FROM DATABASE_SNAPSHOT opció esetén az adatbázis mindig létezik.)
A VISSZAÁLLÍTÁSi engedélyek olyan szerepkörökhöz lesznek adva, amelyekben a tagsági adatok mindig könnyen elérhetők a kiszolgáló számára. Mivel a rögzített adatbázisszerepkör-tagság csak akkor ellenőrizhető, ha az adatbázis elérhető és sértetlen, ami nem mindig történik meg a VISSZAÁLLÍTÁS végrehajtásakor, a db_owner rögzített adatbázis-szerepkör tagjai nem rendelkeznek VISSZAÁLLÍTÁSi engedélyekkel.
Az adatbázis visszaállítása egy adott időpontra
Az Object Explorerben csatlakozzon az SQL Server adatbázismotor megfelelő példányához, és bontsa ki a kiszolgálófát.
Nyissa meg Adatbázisok. Az adatbázistól függően válasszon ki egy felhasználói adatbázist, vagy bontsa ki Rendszeradatbázisok, majd válasszon ki egy rendszeradatbázist.
Kattintson a jobb gombbal az adatbázisra, mutasson a Feladatokmenüpontra, mutasson a Visszaállításmenüpontra, majd kattintson az Adatbázisparancsra.
Az Általános lapon a Forrás szakaszban adja meg a visszaállítani kívánt biztonsági mentési csoportok forrását és helyét. Válasszon az alábbi lehetőségek közül:
Adatbázis
Válassza ki a legördülő listából visszaállítani kívánt adatbázist. A lista csak azokat az adatbázisokat tartalmazza, amelyek biztonsági mentése az msdb biztonsági mentési előzményeinek alapján történt.
Megjegyzés
Ha a biztonsági mentés egy másik kiszolgálóról származik, a célkiszolgáló nem rendelkezik a megadott adatbázis biztonsági mentési előzményadataival. Ebben az esetben válassza Eszköz lehetőséget a visszaállítani kívánt fájl vagy eszköz manuális megadásához.
eszköz
Kattintson a tallózás (...) gombra a Biztonsági mentési eszközök kiválasztása párbeszédpanel megnyitásához. A Biztonsági mentés adathordozótípus mezőben válasszon egyet a felsorolt eszköztípusok közül. Ha ki szeretne jelölni egy vagy több eszközt a Adathordozó biztonsági mentése mezőben, kattintson hozzáadása gombra.
Miután hozzáadta az eszközöket a Adathordozó biztonsági mentése listamezőhöz, kattintson az OK gombra az Általános lapra való visszatéréshez.
A Forrás: Eszköz: Adatbázis listamezőben válassza ki a visszaállítani kívánt adatbázis nevét.
Megjegyzés Ez a lista csak akkor érhető el, ha Eszköz van kiválasztva. Csak azok az adatbázisok lesznek elérhetők, amelyek biztonsági másolatokkal rendelkeznek a kiválasztott eszközön.
A Cél szakaszban a Adatbázis mező automatikusan ki lesz töltve a visszaállítandó adatbázis nevével. Az adatbázis nevének módosításához írja be az új nevet az Adatbázis mezőbe.
Kattintson Ütemterv elemre a biztonsági mentési ütemterv párbeszédpanel megnyitásához.
A Visszaállítás szakaszban kattintson a Adott dátum és időgombra.
A Dátum és Idő mezővel vagy a csúszkasávon megadhat egy adott dátumot és időpontot, amelynél a visszaállításnak meg kell állnia. Válassza OKlehetőséget.
Megjegyzés
A Idősor Időtartam mezőben módosíthatja az idősoron megjelenített időt.
Miután megadott egy adott időpontot, a Database Recovery Advisor biztosítja, hogy csak az adott időpontra való visszaállításhoz szükséges biztonsági másolatok legyenek kiválasztva a biztonsági mentési csoportok Visszaállítás oszlopában rács visszaállításához. Ezek a választott biztonsági másolatok alkotják a pillanatnyi állapot szerinti visszaállításhoz javasolt visszaállítási tervet. Csak a kijelölt biztonsági másolatokat használja az időponthoz kötött visszaállítási művelethez.
A Biztonsági mentési csoportok oszlopairól a rács visszaállításához lásd: Adatbázis visszaállítása (általános lap). A Database Recovery Advisorral kapcsolatos információkért tekintse meg a Helyreállítás és visszaállítás áttekintése (SQL Server)részt.
A Beállítások lapon, a Visszaállítási beállítások panelen az alábbi lehetőségek közül választhat, ha megfelelő a helyzethez:
Meglévő adatbázis felülírása (WITH REPLACE)
Replikációs beállítások megőrzése (WITH KEEP_REPLICATION)
A visszaállított adatbázishoz való hozzáférés korlátozása (WITH RESTRICTED_USER)
További információ ezekről a beállításokról: Adatbázis visszaállítása (Beállítások lap).
Válasszon egy lehetőséget a Helyreállítási állapot mezőhöz. Ez a mező határozza meg az adatbázis állapotát a visszaállítási művelet után.
RESTORE WITH RECOVERY az alapértelmezett viselkedés, amely a nem véglegesített tranzakciók visszaállításával használatra kész állapotba állítja az adatbázist. További tranzakciónaplók nem állíthatók vissza. Ha most állítja vissza az összes szükséges biztonsági mentést, válassza ezt a lehetőséget.
VISSZAÁLLÍTÁS NORECOVERY, amely nem teszi működőképessé az adatbázist, és nem hajtja végre a függőben lévő tranzakciók visszagörgetését. További tranzakciónaplók állíthatók vissza. Az adatbázis csak a helyreállítás után használható.
RESTORE WITH STANDBY, amely csak olvasható módban hagyja az adatbázist. Visszavonja a nem véglegesített tranzakciókat, de menti a visszavonási műveleteket egy készenléti fájlba, hogy a helyreállítási effektusok visszaállíthatók legyenek.
A beállítások leírását a Adatbázis visszaállítása (Beállítások lap)című témakörben talál.
A visszaállítás előtt készítsen biztonsági másolatot a tail-logról, akkor lesz kiválasztva, ha a kiválasztott időponthoz szükséges. Ezt a beállítást nem kell módosítania, de dönthet úgy is, hogy biztonsági másolatot készít a napló farkáról, még akkor is, ha nincs rá szükség.
A visszaállítási műveletek sikertelenek lehetnek, ha aktív kapcsolat van az adatbázissal. Ellenőrizze a Meglévő kapcsolatok bezárása lehetőséget annak ellenőrzéséhez, hogy a Management Studio és az adatbázis közötti összes aktív kapcsolat le van-e zárva. Ez a jelölőnégyzet a visszaállítási műveletek végrehajtása előtt egyfelhasználós üzemmódra állítja az adatbázist, és befejezett állapotban többfelhasználós üzemmódra állítja az adatbázist.
Válassza a Kérés lehetőséget az egyes biztonsági mentési visszaállítása előtt, ha az egyes visszaállítási műveletek között szeretne rákérdezni. Ez általában csak akkor szükséges, ha az adatbázis nagy méretű, és a visszaállítási művelet állapotát szeretné figyelni.
A megkezdése előtt
A rendszer mindig visszaállít egy megadott időpontot egy napló biztonsági mentéséből. A RESTORE LOG utasítás sorozat minden egyes utasításában meg kell adnia a célidőt vagy a tranzakciót egy azonos STOPAT záradékban. Az időponthoz kötött visszaállítás előfeltételeként először vissza kell állítania egy teljes adatbázis biztonsági mentését, amelynek végpontja korábbi a cél visszaállítási időnél. A teljes adatbázis-biztonsági mentés lehet régebbi, mint a legutóbbi teljes adatbázismentés, feltéve hogy minden azt követő naplómentést visszaállít, beleértve azt a naplómentést is, amelyik az Ön által választott időpontot tartalmazza.
Annak megállapításához, hogy melyik adatbázis biztonsági mentését szeretné visszaállítani, megadhatja a WITH STOPAT záradékot a RESTORE DATABASE utasításban, hogy hibát okozzon, ha egy adat biztonsági mentése túl friss a megadott célidőhöz. A teljes adatmentés mindig visszaáll, még akkor is, ha tartalmazza a célidőt.
Alapszintű Transact-SQL szintaxis
NAPLÓ VISSZAÁLLÍTÁSA adatbázis_név<mentési_eszköz> használatával megáll STOPAT időpontnál =, helyreállítás...
A helyreállítási pont az a legutóbbi tranzakciós véglegesítés, amely az dátum-időérték értékénél vagy azt megelőzően történt, és amelyet az időponthatároz meg.
Ha csak az adott időpont előtt végrehajtott módosításokat szeretné visszaállítani, adja meg a STOPAT =időt minden visszaállított biztonsági mentéshez. Ez biztosítja, hogy ne lépje túl a célidőt.
Adatbázis visszaállítása egy adott időpontra
Megjegyzés
Erre az eljárásra példa: Példa (Transact-SQL), a szakasz későbbi részében.
Csatlakozzon ahhoz a kiszolgálópéldányhoz, amelyen vissza szeretné állítani az adatbázist.
Hajtsa végre a RESTORE DATABASE utasítást a NORECOVERY beállítással.
Megjegyzés
Ha egy részleges visszaállítási sorozat kizárja FILESTREAM fájlcsoportot, az időponthoz kötött visszaállítás nem támogatott. A visszaállítási sorrendet kényszerítheti a folytatásra. A RESTORE utasításból kihagyott FILESTREAM-fájlcsoportok azonban soha nem állíthatók vissza. Időponthoz kötött visszaállítás kényszerítéséhez adja meg a CONTINUE_AFTER_ERROR beállítást a STOPAT, STOPATMARK vagy STOPBEFOREMARK beállítással együtt, amelyet a későbbi VISSZAÁLLÍTÁSI NAPLÓ utasításokban is meg kell adnia. Ha CONTINUE_AFTER_ERROR ad meg, a részleges visszaállítási sorozat sikeres lesz, és a FILESTREAM fájlcsoport helyreállíthatatlanná válik.
Állítsa vissza az utolsó különbségi adatbázis biztonsági mentését, ha van ilyen, az adatbázis helyreállítása nélkül (RESTORE DATABASE database_name FROM backup_device WITH NORECOVERY).
Alkalmazza az egyes tranzakciónapló biztonsági mentéseket ugyanabban a sorrendben, amelyben létrehozták őket, megadva azt az időpontot, amikor le szeretné állítani a napló visszaállítását (RESTORE DATABASE database_name FROM <backup_device> WITH STOPAT =time, RECOVERY).
Megjegyzés
A RECOVERY és STOPAT opciók. Ha a tranzakciónapló biztonsági mentése nem tartalmazza a kért időt (például ha a megadott idő meghaladja a tranzakciónapló által lefedett idő végét), a rendszer figyelmeztetést hoz létre, és az adatbázis nem lesz helyreállítva.
Az alábbi példa egy adatbázis állapotát állítja vissza a April 15, 2020
12:00 AM
állapotába, és egy olyan visszaállítási műveletet mutat be, amely több napló biztonsági mentését is magában foglalja. A biztonsági mentési eszközön AdventureWorksBackups
, a visszaállítandó teljes adatbázis biztonsági mentése az eszközön a harmadik biztonsági mentési csoport (FILE = 3
), az első napló biztonsági mentése a negyedik biztonsági mentési csoport (FILE = 4
), a második pedig az ötödik biztonsági mentési csoport (FILE = 5
).
Fontos
A AdventureWorks2022
adatbázis az egyszerű helyreállítási modellt használja. A naplók biztonsági mentésének engedélyezéséhez a teljes adatbázis biztonsági mentése előtt az adatbázis úgy lett beállítva, hogy a teljes helyreállítási modellt használja a ALTER DATABASE AdventureWorks SET RECOVERY FULL
használatával.
RESTORE DATABASE AdventureWorks
FROM AdventureWorksBackups
WITH FILE=3, NORECOVERY;
RESTORE LOG AdventureWorks
FROM AdventureWorksBackups
WITH FILE=4, NORECOVERY, STOPAT = 'Apr 15, 2020 12:00 AM';
RESTORE LOG AdventureWorks
FROM AdventureWorksBackups
WITH FILE=5, NORECOVERY, STOPAT = 'Apr 15, 2020 12:00 AM';
RESTORE DATABASE AdventureWorks WITH RECOVERY;
GO
Adatbázis biztonsági mentésének visszaállítása SSMS- használatával
Adatbázis visszaállítása a teljes helyreállítási modell (Transact-SQL) hibapontjára
Adatbázis visszaállítása megjelölt tranzakcióra (SQL Server Management Studio)
ToPointInTime (SMO)
biztonsági másolatkészlet (Transact-SQL)
VISSZAÁLLÍTÁS (Transact-SQL)
RESTORE HEADERONLY (Transact-SQL)
esemény
márc. 31. 23 - ápr. 2. 23
A legnagyobb SQL, Fabric és Power BI tanulási esemény. Március 31. – Április 2. A FABINSIDER kóddal 400 dollárt takaríthat meg.
Regisztráljon még maOktatás
Modul
Adatbázisok biztonsági mentése és visszaállítása - Training
Adatbázisok biztonsági mentése és visszaállítása
Tanúsítvány
Microsoft Certified: Azure Database Administrator Associate - Certifications
SQL Server-adatbázis-infrastruktúra felügyelete felhőalapú, helyszíni és hibrid relációs adatbázisokhoz a Microsoft PaaS relációs adatbázis-ajánlatokkal.