Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Tento článek o zálohování a obnovení je relevantní pro všechny databáze SQL Serveru.
Rozdílové zálohování vychází z nejnovějšího, předchozího úplného zálohování dat. Rozdílové zálohování zachycuje pouze data, která se od této úplné zálohy změnila. Úplné zálohování, na kterém je založeno rozdílové zálohování, se označuje jako základ rozdílového zálohování. Úplné zálohy, s výjimkou záloh jen pro kopírování, můžou sloužit jako základ pro řadu rozdílových záloh, včetně záloh databáze, částečných záloh a záloh souborů. Základní záloha rozdílového zálohování souborů může být obsažena v rámci úplného zálohování, zálohy souborů nebo částečné zálohy.
Výhody
Vytvoření rozdílového zálohování může být mnohem rychlejší než vytvoření úplného zálohování. Rozdílové zálohování zaznamenává pouze data, která se od úplného zálohování změnila. To usnadňuje provádění častých záloh dat, což snižuje riziko ztráty dat. Než však obnovíte rozdílové zálohování, musíte obnovit jeho základ. Obnovení z rozdílového zálohování proto bude nutně vyžadovat více kroků a času než obnovení z úplného zálohování, protože jsou vyžadovány dva záložní soubory.
Rozdílové zálohy databáze jsou užitečné zejména v případě, že se podmnožina databáze mění častěji než zbytek databáze. V těchto případech umožňuje rozdílové zálohování databází často zálohovat bez režijních nákladů na úplné zálohy databáze.
V rámci úplného modelu obnovení může použití rozdílových záloh snížit počet záloh protokolů, které musíte obnovit.
Přehled rozdílových záloh
Rozdílové zálohování zachycuje stav všech rozsahů (kolekcí osmi fyzicky souvislých stránek), které se změnily mezi vytvořením rozdílové základny a vytvořením rozdílového zálohování. To znamená, že velikost daného rozdílového zálohování závisí na množství dat, která se od základu změnila. Obecně platí, že čím starší je základ, tím větší bude nová diferenciální záloha. V sérii rozdílových záloh bude často aktualizovaný rozsah pravděpodobně obsahovat různá data v každé jednotlivé záloze.
Následující obrázek ukazuje, jak funguje rozdílové zálohování. Obrázek znázorňuje 24 datových rozsahů, z nichž 6 se změnilo. Rozdílové zálohování obsahuje pouze těchto šest rozsahů dat. Operace rozdílového zálohování spoléhá na rastrovou stránku, která obsahuje bit pro každý rozsah. Pro každý rozsah aktualizovaný od základu je bit nastaven na hodnotu 1 v rastrovém obrázku.
Poznámka:
Rozdílový rastrový obrázek není aktualizován zálohou jen pro kopírování. Proto zálohování jen pro kopírování nemá vliv na následné rozdílové zálohy.
Diferenciální zálohování, které je pořízeno poměrně brzy po svém základu, může být výrazně menší než základ diferenciální zálohy. Tím ušetříte místo na úložišti a čas zálohování. Když se ale databáze v průběhu času mění, rozdíl mezi databází a konkrétní rozdílovou základnou se zvyšuje. Čím delší je doba mezi rozdílovým zálohováním a jeho základnou, tím větší pravděpodobně bude rozdílové zálohování. To znamená, že rozdílové zálohy mohou nakonec dosáhnout velikosti rozdílové báze. Velké rozdílové zálohování ztratí výhody rychlejšího a menšího zálohování.
S rostoucí velikostí rozdílových záloh může obnovení rozdílové zálohy výrazně zvýšit dobu potřebnou k obnovení databáze. Proto doporučujeme provést nové úplné zálohování v nastavených intervalech, abyste vytvořili novou rozdílovou základnu pro data. Můžete například provést týdenní úplnou zálohu celé databáze (tj. úplnou zálohu databáze) následovanou řadou rozdílových záloh databáze v průběhu týdne.
Při obnovení musíte před obnovením rozdílové zálohy obnovit její základní zálohu. Potom obnovte pouze nejnovější rozdílové zálohování, aby se databáze přenesla do doby, kdy byla vytvořena rozdílová záloha. Obvykle byste obnovili nejnovější úplnou zálohu a následně nejnovější rozdílovou zálohu založenou na této úplné záloze.
Rozdílové zálohy databází s tabulkami optimalizovanými pro paměť
Informace o rozdílových zálohách a databázích s tabulkami optimalizovanými pro paměť najdete v tématu Zálohování databáze pomocí tabulek Memory-Optimized.
Rozdílové zálohy databází jen pro čtení
U databází jen pro čtení jsou úplné zálohy použité samostatně jednodušší než při jejich použití s rozdílovými zálohami. Pokud je databáze jen pro čtení, zálohování a další operace nemůžou měnit metadata obsažená v souboru. Proto jsou metadata požadovaná rozdílovým zálohováním, například pořadovým číslem protokolu, na kterém začíná rozdílové zálohování (rozdílová základní hodnota LSN), uložena v master
databázi. Pokud je rozdílová základna přijata, když je databáze určena jen pro čtení, rozdílový rastrový obrázek indikuje více změn, než došlo od základní zálohy. Další data se čtou ze zálohy, ale nezapisují se do zálohy, protože differential_base_lsn
uložená v systémové tabulce zálohovací sady slouží k určení, jestli se data od základu změnila.
Při opětovném vytvoření, obnovení nebo odpojení a následném připojení databáze jen pro čtení dojde ke ztrátě diferenciálních základních informací. K tomu dochází, protože master
databáze není synchronizovaná s uživatelskou databází. Databázový stroj SQL Serveru nemůže tento problém rozpoznat nebo zabránit. Jakékoli pozdější rozdílové zálohy nejsou založené na nejnovějším úplném zálohování a můžou poskytovat neočekávané výsledky. Pokud chcete vytvořit novou rozdílovou základnu, doporučujeme vytvořit úplnou zálohu databáze.
Osvědčené postupy pro použití rozdílových záloh s databází jen pro čtení
Po vytvoření úplné zálohy databáze jen pro čtení, pokud máte v úmyslu vytvořit následnou rozdílovou zálohu, zálohujte master
databázi.
Pokud dojde ke ztrátě master
databáze, obnovte ji před obnovením rozdílové zálohy uživatelské databáze.
Pokud odpojíte a znovu připojíte databázi jen pro čtení, pro kterou plánujete později použít rozdílové zálohy, co nejdříve to bude praktické, proveďte úplnou zálohu této databáze i master
databáze.