Sdílet prostřednictvím


Zálohovací zařízení (SQL Server)

platí pro:SQL Server

Během operace zálohování v databázi SQL Serveru se zálohovaná data ( záloha) zapisuje do fyzického zálohovacího zařízení. Toto fyzické zálohovací zařízení se inicializuje při zápisu prvního zálohování do sady médií. Zálohy na sadě jednoho nebo více zálohovaných zařízení tvoří jednu sadu médií.

Pojmy a definice

záložní disk
Pevný disk nebo jiné diskové médium úložiště, které obsahuje jeden nebo více záložních souborů. Záložní soubor je běžný soubor operačního systému.

sada médií
Seřazená kolekce záložních médií, pásek nebo diskových souborů, která používá pevný typ a počet zálohovaných zařízení. Další informace o sadách médií naleznete v Sadách médií, Rodinách médií a Souborech záloh (SQL Server).

fyzické zálohovací zařízení
Pásková jednotka nebo diskový soubor, který poskytuje operační systém. Zálohu lze zapsat na 1 až 64 zařízení pro zálohování. Pokud zálohování vyžaduje více zálohovaných zařízení, musí všechna zařízení odpovídat jednomu typu zařízení (disku nebo pásky).

Zálohy SQL Serveru je také možné zapsat do služby Azure Blob Storage kromě disku nebo pásky.

Použití zálohovacích zařízení disku

Pokud se diskový soubor zaplní během přidávání zálohy k sadě médií, operace zálohování selže. Maximální velikost záložního souboru je určena volným místem na disku dostupném na diskovém zařízení; proto odpovídající velikost pro záložní diskové zařízení závisí na velikosti vašich záloh.

Zálohovací zařízení disku může být jednoduché diskové zařízení, například jednotka ATA. Alternativně můžete použít vyměnitelnou diskovou jednotku, která by vám transparentně nahradila celý disk na jednotce prázdným diskem. Záložní disk může být místní disk na serveru nebo vzdálený disk, který je sdíleným síťovým prostředkem. Informace o tom, jak používat vzdálený disk, naleznete v části Zálohování do souboru ve sdílené síťové složce dále v tomto tématu.

Nástroje pro správu SQL Serveru jsou při zpracování zálohovacích zařízení disku velmi flexibilní, protože automaticky generují název s časovým razítkem v souboru disku.

Důležité

Doporučujeme, aby záložní disk byl jiný disk než disky s daty databáze a disky protokolů. To je nezbytné, abyste měli přístup k zálohám v případě, že data nebo protokolový disk selže.

Pokud jsou soubory databáze a záložní soubory na stejném zařízení a zařízení selže, databáze a zálohy nebudou k dispozici. Umístění databáze a záložních souborů na samostatná zařízení také optimalizuje výkon vstupně-výstupních operací pro produkční použití databáze i zápis záloh.

Určení záložního souboru pomocí jeho fyzického názvu (Transact-SQL)

Základní syntaxe ZÁLOHOVÁNÍ pro zadání záložního souboru pomocí názvu fyzického zařízení je:

BACKUP DATABASE database_name

TO DISK = { 'physical_backup_device_name' | @physical_backup_device_name_var }

Například:

BACKUP DATABASE AdventureWorks2022   
   TO DISK = 'Z:\SQLServerBackups\AdventureWorks2022.bak';  
GO  

Pokud chcete v příkazu RESTORE zadat fyzické diskové zařízení, je základní syntaxe:

RESTORE { DATABASE | LOG} database_name

FROM DISK = { 'physical_backup_device_name' | @physical_backup_device_name_var }

Příklad:

RESTORE DATABASE AdventureWorks2022   
   FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2022.bak';   

Zadejte cestu k záložnímu souboru disku.

Při zadávání záložního souboru byste měli zadat jeho úplnou cestu a název souboru. Pokud při zálohování do souboru zadáte pouze název souboru nebo relativní cestu, záložní soubor se vloží do výchozího záložního adresáře. Výchozí záložní adresář je C:\Program Files\Microsoft SQL Server\MSSQL. n\MSSQL\Backup, kde n je počet instancí serveru. Pro výchozí instanci serveru je proto výchozí záložní adresář: C:\Program Files\Microsoft SQL Server\MSSQL13. MSSQLSERVER\MSSQL\Backup.

Pokud se chcete vyhnout nejednoznačnosti, zejména ve skriptech, doporučujeme explicitně zadat cestu k záložnímu adresáři v každé klauzuli DISK. Pokud ale používáte Editor dotazů, je to méně důležité. V takovém případě, pokud jste si jisti, že záložní soubor se nachází ve výchozím záložním adresáři, můžete vynechat cestu z klauzule DISK. Následující příkaz například BACKUP zálohuje AdventureWorks2025 databázi do výchozího záložního adresáře.

BACKUP DATABASE AdventureWorks2022   
   TO DISK = 'AdventureWorks2022.bak';  
GO  

Poznámka:

Výchozí umístění je uloženo v klíči registru BackupDirectory pod HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.n\MSSQLServer.

Zálohování do sdíleného souboru v síti

Aby měl SQL Server přístup ke vzdálenému souboru disku, musí mít účet služby SQL Serveru přístup ke sdílené síťové složce. To zahrnuje mít oprávnění potřebná pro zálohovací operace k zápisu do sdílené síťové složky a pro obnovovací operace ke čtení z ní. Dostupnost síťových jednotek a oprávnění závisí na kontextu, ve kterém běží služba SQL Serveru:

  • Pokud chcete zálohovat na síťovou jednotku, když sql Server běží v uživatelském účtu domény, musí být sdílená jednotka namapována jako síťová jednotka v relaci, ve které běží SQL Server. Pokud spustíte Sqlservr.exe z příkazového řádku, SQL Server uvidí všechny síťové jednotky, které jste namapovali v relaci přihlášení.

  • Když spustíte Sqlservr.exe jako službu, SQL Server běží v samostatné relaci, která nemá žádný vztah k vaší přihlašovací relaci. Relace, ve které služba běží, může mít své vlastní mapované jednotky, i když obvykle ne.

  • K účtu síťové služby se můžete připojit pomocí účtu počítače místo uživatele domény. Pokud chcete povolit zálohování z konkrétních počítačů na sdílenou jednotku, udělte přístup k účtům počítače. Pokud má proces Sqlservr.exe, který vytváří zálohu, přístup, je irelevantní, jestli má uživatel odesílající příkaz BACKUP přístup.

    Důležité

    Zálohování dat přes síť může podléhat chybám sítě; Proto doporučujeme, abyste při použití vzdáleného disku po dokončení operace zálohování ověřili operaci zálohování. Další informace naleznete v tématu RESTORE VERIFYONLY (Transact-SQL).

Zadání názvu UNC (Universal Naming Convention)

Pokud chcete zadat sdílenou síťovou složku v příkazu zálohování nebo obnovení, použijte plně kvalifikovaný název UNC (Universal Nameming Convention) souboru pro zálohovací zařízení. Název UNC má tvar \\Systemname\NázevSdílení\Cesta\NázevSouboru.

Například:

BACKUP DATABASE AdventureWorks2022   
   TO DISK = '\\BackupSystem\BackupDisk1\AW_backups\AdventureWorksData.Bak';  
GO  

Použití páskových zařízení

Poznámka:

Podpora zařízení zálohování pásek bude odebrána v budoucí verzi SQL Serveru. Nepoužívejte tuto funkci v nové vývojové práci a naplánujte úpravu aplikací, které tuto funkci aktuálně používají.

Zálohování dat SQL Serveru na pásku vyžaduje, aby pásková jednotka nebo jednotky byly podporovány operačním systémem Microsoft Windows. Kromě toho pro danou páskovou jednotku doporučujeme používat pouze pásky doporučené výrobcem jednotky. Další informace o instalaci páskové jednotky najdete v dokumentaci k operačnímu systému Windows.

Při používání páskové jednotky může operace zálohování vyplnit jednu pásku a poté pokračovat na další pásku. Každá páska obsahuje záhlaví média. První použité médium se nazývá počáteční páska. Každá následná páska se označuje jako pokračování pásky a má pořadové číslo média, které je vyšší než předchozí páska. Například sada médií přidružená ke čtyřem páskovým zařízením obsahuje alespoň čtyři počáteční pásky (a pokud se databáze nevejde, čtyři série pokračovacích pásek). Při připojování zálohovací sady je nutné připojit poslední pásku v řadě. Pokud poslední páska není připojená, databázový stroj se přesměruje na konec připojené pásky a pak vyžaduje, abyste pásku změnili. V tomto okamžiku připojte poslední pásku.

Pásková zálohovací zařízení se používají jako disková zařízení s následujícími výjimkami:

  • Páskové zařízení musí být fyzicky připojeno k počítači, na kterém běží instance SQL Serveru. Zálohování na vzdálená pásková zařízení se nepodporuje.

  • Pokud je během operace zálohování vyplněno zařízení pro zálohování pásky, ale stále musí být zapsáno více dat, SQL Server vyzve k zadání nové pásky a po načtení nové pásky pokračuje v operaci zálohování.

Určení záložní pásky pomocí jeho fyzického názvu (Transact-SQL)

Základní syntaxe ZÁLOHOVÁNÍ pro určení záložní pásky pomocí názvu fyzického zařízení páskové jednotky je:

BACKUP { DATABASE | LOG} database_name

TO TAPE = { 'physical_backup_device_name' | @physical_backup_device_name_var }

Například:

BACKUP LOG AdventureWorks2022   
   TO TAPE = '\\.\tape0';  
GO  

Pokud chcete v příkazu RESTORE zadat fyzické páskové zařízení, je základní syntaxe:

RESTORE { DATABASE | LOG} database_name

FROM TAPE = { 'physical_backup_device_name' | @physical_backup_device_name_var }

možnosti zálohování a obnovení Tape-Specific (Transact-SQL)

Pro usnadnění správy pásek poskytuje příkaz BACKUP následující možnosti specifické pro pásku:

  • { NOUNLOAD | UNLOAD }

    Můžete řídit, zda je zálohovací páska automaticky vyjmuta z páskové jednotky po operaci zálohování nebo obnovení. UNLOAD/NOUNLOAD je nastavení relace, které trvá po dobu životnosti relace nebo dokud se neobnoví zadáním alternativní možnosti.

  • { REWIND | NOREWIND }

    Můžete určit, zda SQL Server ponechá pásku otevřenou po operaci zálohování či obnovení, nebo ji po naplnění uvolní a převine. Výchozím chováním je převinutí pásky (REWIND).

Poznámka:

Další informace o syntaxi a argumentech SLUŽBY BACKUP najdete v tématu BACKUP (Transact-SQL). Další informace o syntaxi a argumentech RESTORE (Transact-SQL) a RESTORE Arguments (Transact-SQL) najdete v příslušných odkazech.

Správa otevřených pásek

Pokud chcete zobrazit seznam otevřených páskových zařízení a stav žádostí o připojení, zadejte dotaz na zobrazení sys.dm_io_backup_tapes dynamické správy. Toto zobrazení zobrazuje všechny otevřené pásky. Patří mezi ně používané pásky, které jsou dočasně nečinné v době, kdy čekají na další proces ZÁLOHOVÁNÍ nebo OBNOVENÍ.

Pokud je páska omylem otevřená, nejrychlejší způsob, jak pásku uvolnit, je pomocí následujícího příkazu: RESTORE REWINDONLY FROM TAPE =backup_device_name. Další informace naleznete v tématu RESTORE REWINDONLY (Transact-SQL).

Použití služby Azure Blob Storage

Zálohy SQL Serveru je možné zapsat do služby Azure Blob Storage. Další informace o použití služby Azure Blob Storage pro vaše zálohy najdete v tématu Zálohování a obnovení SQL Serveru pomocí služby Microsoft Azure Blob Storage.

Použití logického zálohovacího zařízení

Logické zálohovací zařízení je volitelný název definovaný uživatelem, který odkazuje na konkrétní fyzické zálohovací zařízení (diskový soubor nebo pásková jednotka). Logické zálohovací zařízení umožňuje použít nepřímý odkaz na odpovídající fyzické zálohovací zařízení.

Definování logického zálohovacího zařízení zahrnuje přiřazení logického názvu fyzickému zařízení. Například logické zařízení AdventureWorksBackups může být definováno tak, aby odkazovalo na Z:\SQLServerBackups\AdventureWorks2022.bak soubor nebo na páskovou jednotku \\.\tape0. Příkazy zálohování a obnovení mohou poté specifikovat AdventureWorksBackups jako zálohovací zařízení místo DISK = 'Z:\SQLServerBackups\AdventureWorks2022.bak' nebo TAPE = '\\.\tape0'.

Název logického zařízení musí být jedinečný mezi všemi logickými zálohovacími zařízeními v instanci serveru. Pokud chcete zobrazit existující názvy logických zařízení, zadejte dotaz na zobrazení katalogu sys.backup_devices . Toto zobrazení zobrazuje název každého logického zálohovacího zařízení a popisuje typ a název fyzického souboru nebo cestu odpovídajícího fyzického zálohovacího zařízení.

Po definování logického zálohovacího zařízení v příkazu BACKUP nebo RESTORE můžete místo fyzického názvu zařízení zadat logické zálohovací zařízení. Následující příkaz například zálohuje AdventureWorks2025 databázi do logického zálohovacího AdventureWorksBackups zařízení.

BACKUP DATABASE AdventureWorks2022   
   TO AdventureWorksBackups;  
GO  

Poznámka:

V daném příkazu BACKUP nebo RESTORE je název logického zálohovacího zařízení a odpovídající název fyzického zálohovaného zařízení zaměnitelný.

Jednou z výhod použití logického zálohovacího zařízení je, že je jeho použití jednodušší než používání složité cesty. Pokud plánujete vytvářet řadu záloh do stejného adresáře nebo na páskové zařízení, může vám pomoct použití logického zálohovacího zařízení. Logická zálohovací zařízení jsou zvlášť užitečná pro identifikaci zařízení zálohování pásek.

Záložní skript lze zapsat tak, aby používal konkrétní logické zálohovací zařízení. Díky tomu můžete přepnout na nová fyzická zálohovací zařízení bez aktualizace skriptu. Přepnutí zahrnuje následující proces:

  1. Vyřazení původního logického zálohovacího zařízení

  2. Definování nového logického zálohovacího zařízení, které používá původní název logického zařízení, ale je navázáno na jiné fyzické zálohovací zařízení. Logická zálohovací zařízení jsou zvlášť užitečná pro identifikaci zařízení zálohování pásek.

Sady zrcadlených záložních médií

Zrcadlení sad záložních médií snižuje dopady poruch zařízení zálohování. Tyto poruchy jsou obzvláště závažné, protože zálohy představují poslední linii ochrany před ztrátou dat. S rostoucí velikostí databází se pravděpodobnost zvyšuje, že selhání zálohovaného zařízení nebo média způsobí, že zálohování nebude možné. Zrcadlení záložního média zvyšuje spolehlivost záloh tím, že poskytuje redundanci fyzického zálohovacího zařízení. Další informace naleznete v tématu Zrcadlené zálohovací sady médií (SQL Server).

Poznámka:

Zrcadlené záložní sady médií jsou podporovány pouze v edici SQL Server 2005 Enterprise a novějších verzích.

Archivace záloh SQL Serveru

K archivaci záloh disků a ukládání archivů mimo lokalitu doporučujeme použít nástroj pro zálohování systému souborů. Použití disku má výhodu, že síť používáte k zápisu archivovaných záloh na disk mimo lokalitu. Azure Blob Storage se dá použít jako možnost archivace mimo web. Zálohy disků můžete nahrát buď přímo, nebo je přímo zapsat do služby Azure Blob Storage.

Dalším běžným přístupem k archivaci je zápis záloh SQL Serveru na místní záložní disk, jejich archivace na pásku a následné uložení pásek mimo lokalitu.

Související úkoly

Určení diskového zařízení (SQL Server Management Studio)

Určení páskového zařízení (SQL Server Management Studio)

Definování logického zálohovacího zařízení

Použití logického zálohovacího zařízení

O zobrazení informací o zálohovacích zařízeních

Odstranění logického zálohovacího zařízení

Viz také

SQL Server, objekt zařízení pro zálohování
BACKUP (Transact-SQL)
Plány údržby
Sady médií, rodiny médií a zálohovací sady (SQL Server)
OBNOVIT (Transact-SQL)
OBNOVIT LABELONLY (Transact-SQL)
sys.backup_devices (Transact-SQL)
sys.dm_io_backup_tapes (Transact-SQL)
Zrcadlené zálohovací sady médií (SQL Server)