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
Toto téma popisuje, jak zálohovat transakční protokol v případě poškození databáze v SQL Serveru pomocí SQL Server Management Studio nebo Transact-SQL.
v tomto tématu
Než začnete:
Zálohování transakčního protokolu při poškození databáze pomocí:
Než začnete
Omezení a restrikce
- Příkaz BACKUP není povolen v explicitní nebo implicitní transakci.
Doporučení
- Pro databázi, která používá úplný nebo hromadně protokolovaný model obnovení, je obecně nutné zálohovat konec protokolu před zahájením obnovení databáze. Abyste mohli provést převzetí služeb v konfiguraci odesílání protokolu, měli byste také předem zálohovat konec protokolu primární databáze. Obnovení zálohy protokolu tail-log jako konečné zálohy protokolu před obnovením databáze zabrání ztrátě práce po selhání. Další informace o zálohování tail-log naleznete v tématu Tail-Log zálohování (SQL Server).
Bezpečnost
Dovolení
Oprávnění PROTOKOLU ZÁLOHOVÁNÍ a DATABÁZE ZÁLOHOVÁNÍ jsou výchozí pro členy správce systému pevné role serveru a db_owner a db_backupoperator pevné databázové role.
Problémy s vlastnictvím a oprávněním ve fyzickém souboru zálohovacího zařízení můžou kolidovat s operací zálohování. SQL Server musí být schopen číst a zapisovat do zařízení; účet, pod kterým běží služba SQL Serveru, musí mít oprávnění k zápisu. sp_addumpdevice, který přidává položku pro zálohovací zařízení v systémových tabulkách, ale nekontroluje přístupová oprávnění k souborům. Takové problémy s fyzickým souborem zálohovaného zařízení se nemusí zobrazit, dokud nebude fyzický prostředek při pokusu o zálohování nebo obnovení přístupný.
Použití aplikace SQL Server Management Studio
Pro zálohování konce transakčního protokolu
Po připojení k příslušné instanci databázového stroje Microsoft SQL Server v Průzkumníku objektů klikněte na název serveru a rozbalte strom serveru.
Rozbalte Databázea v závislosti na databázi vyberte uživatelskou databázi nebo rozbalte systémové databáze a vyberte systémovou databázi.
Klepněte pravým tlačítkem myši na databázi, přejděte na příkaz Úkolya potom klepněte na tlačítko Zálohovat. Zobrazí se dialogové okno Zálohovat databázi.
V seznamu Databáze ověřte název databáze. Volitelně můžete vybrat jinou databázi ze seznamu.
Ověřte, že model obnovení je FULL nebo BULK_LOGGED.
V seznamu Typ zálohování vyberte Transakční protokol.
Ponechejte Kopírování pouze zálohy nevybrané.
V oblasti Nastavení zálohování buď přijměte výchozí název sady záloh navrhovaný v textovém poli Název nebo zadejte jiný název sady záloh.
Do textového pole Popis zadejte popis zálohy koncového protokolu.
Určete, kdy sada záloh vyprší:
Pokud chcete, aby sada zálohování vypršela po určitém počtu dnů, klikněte na Po (výchozí možnost) a zadejte počet dní po vytvoření sady, jejichž platnost vyprší. Tato hodnota může být od 0 do 99999 dnů; hodnota 0 dnů znamená, že sada záloh nikdy nevyprší.
Výchozí hodnota je nastavena v Výchozí uchovávání záložních médií (ve dnech) v dialogovém okně Vlastnosti serveru (Nastavení databáze stránka). Chcete-li získat přístup k tomuto dialogovému okně, klikněte pravým tlačítkem myši na název serveru v Průzkumníku objektů a vyberte vlastnosti; pak vyberte stránku Nastavení databáze.
Pokud chcete, aby platnost záložní sady vypršela k určitému datu, klikněte na Dnea zadejte datum, kdy sada přestane platit.
Vyberte typ cíle zálohování kliknutím na Disk nebo páska. Chcete-li vybrat cesty až k 64 diskovým nebo páskovým jednotkám obsahujícím jednu sadu médií, klikněte na tlačítko Přidat. Vybrané cesty se zobrazí v seznamu Zálohování pro.
Pokud chcete odebrat cíl zálohování, vyberte ho a klikněte na Odebrat. Pokud chcete zobrazit obsah cíle zálohování, vyberte ho a klikněte na Obsah.
Na stránce Možnosti vyberte možnost Přepsat média kliknutím na jednu z následujících možností:
Zazálohovat do existující sady médií
U této možnosti klikněte na Připojit k existující sadě záloh nebo Přepsat všechny existující sady zálohování.
Pokud chcete, můžete vybrat Kontrola názvu souboru médií a vypršení platnosti souboru záloh, aby operace zálohování ověřila datum a čas, kdy soubor médií a soubor záloh vyprší.
Volitelně můžete zadat název do textového pole Název sady médií. Pokud není zadaný žádný název, vytvoří se sada médií s prázdným názvem. Pokud zadáte název sady médií, je médium (páska nebo disk) zaškrtnuté, abyste zjistili, jestli skutečný název odpovídá zadanému názvu.
Pokud necháte název média prázdný a zaškrtnete políčko pro kontrolu oproti médiu, úspěchem bude, když bude název média na médiu také prázdný.
Zálohování do nové sady médií a vymazání všech existujících sad záloh
Pro tuto možnost zadejte název do textového pole Název nové sady médií a volitelně popište sadu médií v popisu nové sady médií textovém poli.
Další informace o možnostech sady médií naleznete v tématu Sady médií, rodiny médií a sady zálohování (SQL Server).
V části Spolehlivost volitelně zkontrolujte:
Ověřte zálohu po dokončení.
Proveďte kontrolní součet před zápisem na média.
Pokračovat při chybě kontrolního součtu
Informace o kontrolních součtech najdete v tématu Možné chyby médií při zálohování a obnovení (SQL Server).
V oddílu transakčního protokolu zkontrolujte, zazálohujte konec protokolu a ponechte databázi v režimu obnovy.
Je to ekvivalent k zadání následujícího příkazu BACKUP:
BACKUP LOG <database_name> TO <backup_device> WITH NORECOVERY
Důležitý
V době obnovení dialogové okno Obnovit databázi zobrazí typ zálohy protokolu tail-log jako transakční protokol (pouze kopírování).
Pokud zálohujete na páskovou jednotku (jak je uvedeno v části Cíl stránky Obecné), je možnost Vyjmout pásku po zálohování aktivní. Kliknutím na tuto možnost aktivujete možnost Převinout pásku před vyložením.
SQL Server 2008 (10.0.x) Enterprise a novější podporuje kompresi záloh. Ve výchozím nastavení závisí, zda je záloha komprimovaná, na hodnotě serverové konfigurační volby výchozí komprese zálohování . Bez ohledu na aktuální výchozí nastavení na úrovni serveru však můžete komprimovat zálohování kontrolou Komprimovat zálohovánía můžete zabránit kompresi kontrolou Nekomprimovat zálohování.
Zobrazit aktuální výchozí kompresi záloh
Použití Transact-SQL
Vytvoření zálohy aktuálně aktivního transakčního protokolu
Spusťte příkaz BACKUP LOG pro zálohování aktuálně aktivního transakčního protokolu, který určuje:
Název databáze, do které patří transakční protokol, který se má zálohovat.
Zálohovací zařízení, do kterého se zapíše záloha transakčního protokolu.
Klauzule NO_TRUNCATE.
Tato klauzule umožňuje aktivní část transakčního protokolu zálohovat, i když je databáze nepřístupná za předpokladu, že soubor transakčního protokolu je přístupný a nepoškozený.
Příklad (Transact-SQL)
Poznámka
Tento příklad používá AdventureWorks2022
, který používá jednoduchý model obnovení. Pro povolení zálohování protokolů byla databáze nastavena na používání úplného modelu obnovení před provedením úplného zálohování databáze. Další informace naleznete v tématu Zobrazení nebo změna modelu obnovení databáze (SQL Server).
Tento příklad zálohuje aktuálně aktivní transakční protokol, pokud je databáze poškozena a nepřístupná, pokud je transakční protokol nepoškozen a přístupný.
BACKUP LOG AdventureWorks2022
TO MyAdvWorks_FullRM_log1
WITH NO_TRUNCATE;
GO
Viz také
Obnovení Zálohy Transakčního Protokolu (SQL Server)
obnovení databáze SQL Serveru k určitému bodu v čase (úplný model obnovení)
zálohování databáze (stránka Možností zálohování)
Zálohování Databáze (Obecná Stránka)
Použití záloh transakčních protokolů (SQL Server)
BACKUP (Transact-SQL)
obnovení souborů (jednoduchý model obnovení)
obnovení souborů (úplný model obnovení)