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 azt ismerteti, hogyan állíthatja vissza a különbségi adatbázis biztonsági mentését az SQL Server Management Studióval vagy a Transact-SQL-lel.
Ebben a témában
Kezdés előtt:
Differenciális adatbázis biztonsági mentés visszaállítása a következő módon:
Mielőtt hozzákezdene
Korlátozások és korlátozások
Az explicit vagy implicit tranzakciókban a RESTORE nem engedélyezett.
Az SQL Server újabb verziójával létrehozott biztonsági másolatok nem állíthatók vissza az SQL Server korábbi verzióiban.
Az SQL Serverben visszaállíthatja a felhasználói adatbázist az SQL Server 2005 (9.x) vagy egy újabb verzióval létrehozott adatbázis biztonsági mentéséből.
Előfeltételek
- A teljes vagy tömegesen naplózott helyreállítási modellben, mielőtt visszaállíthat egy adatbázist, biztonsági másolatot kell készítenie az aktív tranzakciónaplóról (más néven a napló farkáról). További információkért lásd a(z) Tranzakció napló biztonsági mentése (SQL Server).
Biztonság
Engedélyek
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 a következőkre vonatkoznak: a sysadmin és dbcreator rögzített kiszolgálói szerepkörök tagjaira, valamint az adatbázis tulajdonosára (dbo). (A FROM DATABASE_SNAPSHOT opció esetében 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 SQL Server Management Studio használata
Differenciális adatbázis biztonsági mentésének visszaállítása
Miután csatlakozott a Microsoft SQL Server adatbázismotor megfelelő példányához, az Object Explorerben kattintson a kiszolgáló nevére a kiszolgálófa kibontásához.
Bővítse ki 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 Feladatokpontra, majd a Visszaállításpontra, végül kattintson a 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.
Jegyzet
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.
Jegyzet
Ha egy adott időpontban szeretné leállítani a visszaállítást, kattintson az Ütemterv elemre a biztonsági mentési ütemterv párbeszédpanel megnyitásához. Ha segítségre van szüksége egy adatbázis-visszaállítás adott időpontban történő leállításához, tekintse meg SQL Server-adatbázis visszaállítása időpontra (teljes helyreállítási modell).
A Biztonsági mentések visszaállításához a rácsban válassza ki a visszaállítani kívánt biztonsági mentéseket a differenciális biztonsági mentésen keresztül.
A Biztonsági mentési készletek oszlopairól a táblázatban lásd: Adatbázis visszaállítása (általános lap).
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:
A meglévő adatbázis felülírása (A CSERE PARANCS HASZNÁLATÁVAL)
A replikációs beállítások megőrzése (WITH KEEP_REPLICATION)
Kérés az egyes biztonsági mentési visszaállítása előtt
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 A NORECOVERY, ami a adatbázist nem teszi működőképessé, és nem hajtja végre a be nem fejezett tranzakciók visszagörgetését. További tranzakciónaplók visszaállíthatóak. Az adatbázis csak a helyreállítás után használható.
RESTORE WITH STANDBY, amely miatt az adatbázis írásvédett módban marad. 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ási műveletek sikertelenek lesznek, ha aktív kapcsolatok vannak 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.
Ha azt szeretné, hogy az egyes visszaállítási műveletek előtt megerősítést kérjenek, válassza az Kérés lehetőséget minden egyes biztonsági mentés visszaállítása előtt. 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.
Ha szeretné, a Fájlok lapon visszaállíthatja az adatbázist egy új helyre. Ha segítségre van szüksége egy adatbázis áthelyezéséhez, olvassa el Adatbázis visszaállítása új helyre (SQL Server).
Válassza OKlehetőséget.
A Transact-SQL használata
Különbözeti adatbázis biztonsági mentésének visszaállítása
Hajtsa végre a RESTORE DATABASE utasítást a NORECOVERY záradék megadásával, hogy visszaállítson egy teljes adatbázis mentést, amely a különbözeti adatbázis mentése előtt készült. További információ: Útmutató: Teljes biztonsági mentés visszaállítása.
Hajtsa végre a RESTORE DATABASE utasítást a különbségi adatbázis biztonsági mentésének visszaállításához, a következőt megadva:
Annak az adatbázisnak a neve, amelyre a különbségi adatbázis biztonsági mentését alkalmazza.
Az a biztonsági mentési eszköz, amelyről visszaállítják a különbségi adatbázis biztonsági mentését.
A NORECOVERY záradékot akkor használd, ha a tranzakciónapló biztonsági mentéseinek alkalmazása a különbségi adatbázis biztonsági mentésének visszaállítása után történik. Ellenkező esetben adja meg a RECOVERY záradékot.
A teljes vagy tömegesen naplózott helyreállítási modell esetében a különbségi adatbázis biztonsági mentésének visszaállítása visszaállítja az adatbázist arra a pontra, ahol a különbségi adatbázis biztonsági mentése befejeződött. A hibapont előtti állapot visszaállításához alkalmaznia kell azokat a tranzakciónapló mentéseket, amelyeket az utolsó különbségi adatbázis mentése után hoztak létre. További információkért látogasson el ide: Tranzakciónapló-biztonsági mentések (SQL Server).
Példák (Transact-SQL)
Egy. Különbségi adatbázis biztonsági mentésének visszaállítása
Ez a példa visszaállítja az adatbázis és a különbségi adatbázis biztonsági másolatát a MyAdvWorks adatbázisról.
-- Assume the database is lost, and restore full database,
-- specifying the original full database backup and NORECOVERY,
-- which allows subsequent restore operations to proceed.
RESTORE DATABASE MyAdvWorks
FROM MyAdvWorks_1
WITH NORECOVERY;
GO
-- Now restore the differential database backup, the second backup on
-- the MyAdvWorks_1 backup device.
RESTORE DATABASE MyAdvWorks
FROM MyAdvWorks_1
WITH FILE = 2,
RECOVERY;
GO
B. Adatbázis, különbözeti adatbázis és tranzakciónapló biztonsági mentéseinek visszaállítása
Ez a példa visszaállítja a MyAdvWorks adatbázis adatbázisának, különbségi adatbázisának és tranzakciónaplójának biztonsági mentését.
-- Assume the database is lost at this point. Now restore the full
-- database. Specify the original full database backup and NORECOVERY.
-- NORECOVERY allows subsequent restore operations to proceed.
RESTORE DATABASE MyAdvWorks
FROM MyAdvWorks_1
WITH NORECOVERY;
GO
-- Now restore the differential database backup, the second backup on
-- the MyAdvWorks_1 backup device.
RESTORE DATABASE MyAdvWorks
FROM MyAdvWorks_1
WITH FILE = 2,
NORECOVERY;
GO
-- Now restore each transaction log backup created after
-- the differential database backup.
RESTORE LOG MyAdvWorks
FROM MyAdvWorks_log1
WITH NORECOVERY;
GO
RESTORE LOG MyAdvWorks
FROM MyAdvWorks_log2
WITH RECOVERY;
GO
Kapcsolódó tevékenységek
Lásd még:
Különbözeti Biztonsági Mentések (SQL Server)
RESTORE (Transact-SQL)