Sobes.tech
Middle

Ako funguje obnovenie databázy z úplného + diferenčného + transakčného denníka zálohy?

sobes.tech AI

Odpoveď od AI

Obnova databázy z úplných (full), diferenčných (differential) a transakčných (transaction log) záloh prebieha v niekoľkých krokoch:

  1. Obnoví sa posledná úplná záloha — to je základný stav databázy.
  2. Následne sa aplikuje posledná diferenčná záloha, ktorá obsahuje zmeny od poslednej úplnej zálohy.
  3. Potom sa sekvenčne aplikujú všetky transakčné denníky, ktoré boli vytvorené po diferenčnej zálohe, aby sa databáza dostala do požadovaného stavu k poslednému logu.

Je dôležité pri medziestupňoch používať možnosť NORECOVERY, aby databáza zostala v režime obnovy a akceptovala ďalšie zálohy, a až po ich aplikácii vykonať RECOVERY.

Príklady príkazov:

RESTORE DATABASE MyDB FROM DISK = 'full.bak' WITH NORECOVERY;
RESTORE DATABASE MyDB FROM DISK = 'diff.bak' WITH NORECOVERY;
RESTORE LOG MyDB FROM DISK = 'log1.trn' WITH NORECOVERY;
RESTORE LOG MyDB FROM DISK = 'log2.trn' WITH RECOVERY;