Hozzáadása és eltávolítása egy adatbázis fájlt közötti biztonsági napló

Hozzáadása SQL Server 7.0 adatbázis fájlok között tranzakciós log mentést van a sorozaton redundancia ügyleti jegyzőkönyv guba után létrehozott fájl helyes hozzá.
Ha megpróbálja visszaállítani az adatbázist a teljes biztonsági és sorozata tranzakciós log mentést, a mentés a tranzakciós napló létre, miután azt a hozzáadott vagy törölt adatbázis fájlokat nem lehet használni a helyreállításhoz. Hogy megpróbálja helyreállítani az első biztonsági mentés a tranzakciós log létrehozott hozzáadása után a fájl nem az alábbi hibaüzenet jelenik meg:

Szerver: Msg 3155, Level 16, State 1, 1-es vonal
A visszaállítási művelet nem végezhető el, mert egy vagy több fájl lett hozzáadva vagy törölték az adatbázisból, mivel a mentési készlet jött létre.
Szerver: Msg 3013, Level 16, State 1, 1-es vonal
Mentés vagy visszaállítási művelet befejezéséről rendellenesen.

Vegyük azt az esetet, ha a termelési adatbázis SQL Server 7.0, munka 24x7 (éjjel-nappal a hét minden napján). Amikor megpróbálja visszaállítani a mentést, akkor először meg kell visszaállítani az utolsó teljes mentés (használatával WITH NORECOVERY záradék), majd az összes n-1 biztonsági tranzakciós log (Használat NORECOVERY záradék), és a legutóbbi mentés ügyleti jegyzőkönyv (a WITH RECOVERY).
A következő lépések leírják a sorozat felvételével jár egy adatbázis fájlt közötti tranzakciós napló rekordok termelési adatbázisba, és a rendszer hibaüzenetet küld, amely akkor jelentkezik, amikor megpróbálja visszaállítani a backup, a fent leírtak szerint.
Megjegyzés: Az alábbi lépéseket alkalmaztak a tevékenységét az adatbázisba.

Készítsen biztonsági mentést a tranzakciós log fájlt tran_log1.trn.

Adjuk hozzá a fájlt az adatbázisba a script az alábbiak szerint:

ALTER DATABASE Northwind
ADD FILE
(NAME = northwind_data1,
FILENAME = 'E: \ Mssql7 \ DATA \ northwnd_data1.ndf'
SIZE = 5 MB,
MAXSIZE = 15,
FILEGROWTH = 10%
)
GO

Ha van egy pusztítás az adatbázis, vagy ha szeretné visszaállítani a backup visszaállítása érdekében a korábbi állapotát az adatbázis segítségével a mentési szekvencia-ig létrehozott a meghibásodási pont, kövesse az alábbi lépéseket:

1. Állítsa vissza az SQL Server 7.0 adatbázis segítségével:

AZ NORECOVERY záradék
visszaállítása sikeres

Feldolgozott 360 oldalt az adatbázis „Northwind” fájl „Northwind” fájl 1. A feldolgozott 1 oldalakon adatbázis „Northwind” fájl „Northwind_log” fájl 1. mentés vagy visszaállítási művelet sikeresen feldolgozott 361 oldalt 0.810 másodperc (3,642 MB / sec )

2. Állítsa vissza egy biztonsági másolatot a tranzakciós napló segítségével WITH NORECOVERY záradék származó tran_log1.trn:

Feldolgozott 1 oldalakat adatbázis „Northwind” fájl „Northwind_log” fájl 1. mentés vagy visszaállítási művelet sikeres feldolgozása 1 oldal 0.004 másodperc (1,664 MB / sec).

3. Állítsa vissza a tranzakciós napló segítségével WITH NORECOVERY záradék származó tran_log2.trn:

A visszaállítási művelet sikertelen lesz egy hibaüzenettel:

Szerver: Msg 3155, Level 16, State 1, 1-es vonal
A visszaállítási művelet nem végezhető el, mert egy vagy több fájl lett hozzáadva vagy törölték az adatbázisból, mivel a mentési készlet jött létre. Szerver: Msg 3013, Level 16, State 1, 1-es vonal mentés vagy visszaállítási művelet befejezéséről rendellenesen.

Mivel a hibaüzenet azt jelzi, hogy a tranzakciós napló visszaállítást nem tudja folytatni a megadott tartalék tranzakciós napló (tran_log2.trn). Ez a viselkedés tervezési és SQL Server 7.0 nem lehet hozzáadni vagy törölni a fájlokat a biztonsági másolatot a magazin.
A hiba elkerülése érdekében hozzon létre egy teljes mentés után hozzáadni vagy eltávolítani egy vagy több adatbázis fájlokat, majd indítsa el az új tartalék szekvencia bejegyzései. Ha a mentési szekvencia korábban létrehozott az egyetlen rendelkezésre álló helyreállítása, helyreállítása tran_log1.trn, a WITH RECOVERY opció, amely lehetővé teszi, hogy az adatbázis visszaállítása a nem ellentmondásos állapot közvetlenül az adatbázis fájlokat hozzáadni vagy törölni.

Vegyünk egy forgatókönyv hasonló a használt SQL Server 7.0. Hozzáadása után egy fájlt a termelési adatbázis, fuss:

ALTER DATABASE Northwind
ADD FILE
(
NAME = northwind_data1,
FILENAME = 'E: \ Mssql7 \ DATA \ northwnd_data1.ndf'
SIZE = 5 MB,
MAXSIZE = 15,
FILEGROWTH = 10%
)
GO

Feldolgozott 1 oldalakat adatbázis „Northwind” fájl „Northwind_log” fájl 1.
Szerver: Msg 5123, Level 16, State 1, 1-es vonal
Fájl létrehozása ütközött operációs rendszer hiba 3 (A rendszer nem találja
a megadott útvonalon.), miközben megpróbálja megnyitni vagy létrehozni a fizikai fájl
'E: \ Program Files \ Microsoft SQL Server \ MSSQL \ DATA \ nwnd_d2.ndf'.
Szerver: Msg 5183, Level 16, State 1, 1-es vonal
Fájl „northwind_data2” nem hozható létre. Használathoz MOVE megadására használható fizikai fájl nevét.
Szerver: Msg 3013, Level 16, State 1, 1-es vonal
RESTORE LOG lezáró rendellenesen.

egy hibaüzenet jelenik meg, mert a visszaállítási parancs nem fut a lehetőséget az új fájl létrehozása (amely megfelel a fájl hozzá a termelési adatbázis), és lehetővé teszi, hogy írjon adatok fájlba.
Annak elkerülése érdekében, a hibaüzenetet 5123, az alábbi szkript viselkedés:

1. Manuálisan helyreállítása az első biztonsági másolatot a tranzakciós napló, után létrehozott fájl felül (az SQL Server Query Analyzer vagy az SQL Server Enterprise Manager), az alábbi kód:

RESTORE LOG NORTHWIND FROM
DISK = 'e: \ filemgt \ nwind_log2.trn'
WITH MOVE 'northwind_data1'
A 'c: \ Program Files \ Microsoft SQL server \ MSSQL $ SQL2K1 \ Data \ northwnd_data1.ndf'
NORECOVERY záradék

Most már létrehozott egy új adatbázis fájl, így van az ipari adatbázis szerver, amelyen a biztonsági másolat tranzakciós napló.
Miután a parancs futtatásához az 1. lépésben, akkor továbbra is helyreállítani ügyleti jegyzőkönyv, ráadásul anélkül, hogy a MOVE opciót.

Kapcsolódó cikkek