Obnovení databází SQL Serveru na virtuálních počítačích Azure
Tento článek popisuje, jak obnovit databázi SQL Serveru spuštěnou na virtuálním počítači Azure, který služba Azure Backup zálohovala do trezoru služby Azure Backup Recovery Services.
Tento článek popisuje, jak obnovit databáze SQL Serveru. Další informace najdete v tématu Zálohování databází SQL Serveru na virtuálních počítačích Azure.
Poznámka:
Další informace o podporovaných konfiguracích a scénářích najdete v matici podpory zálohování SQL.
Obnovení do časového nebo bodu obnovení
Azure Backup může obnovit databáze SQL Serveru spuštěné na virtuálních počítačích Azure následujícím způsobem:
- Obnovení na konkrétní datum nebo čas (do sekundy) pomocí záloh transakčních protokolů. Azure Backup automaticky určuje odpovídající úplné rozdílové zálohování a řetěz záloh protokolů, které jsou potřeba k obnovení na základě vybraného času.
- Obnovení konkrétní úplné nebo rozdílové zálohy pro obnovení do konkrétního bodu obnovení.
Požadavky na obnovení
Před obnovením databáze si všimněte následujících věcí:
- Databázi můžete obnovit do instance SQL Serveru ve stejné oblasti Azure.
- Cílový server musí být zaregistrovaný ve stejném trezoru jako zdroj. Pokud chcete obnovit zálohy do jiného trezoru, povolte obnovení mezi předplatnými.
- Pokud máte na serveru spuštěných víc instancí, měly by být všechny instance v provozu. V opačném případě se server nezobrazí v seznamu cílových serverů, na které lze databázi obnovit. Další informace najdete v krocích pro řešení potíží.
- Pokud chcete obnovit databázi zašifrovanou transparentním šifrováním dat na jiný SQL Server, musíte nejprve obnovit certifikát na cílový server.
- Databáze s podporou CDC by se měly obnovit pomocí možnosti Obnovit jako soubory .
- Důrazně doporučujeme obnovit "hlavní" databázi pomocí možnosti Obnovit jako soubory a pak provést obnovení pomocí příkazů T-SQL.
- Pro všechny systémové databáze (model, msdb) před aktivací obnovení zastavte službu agenta SQL Serveru.
- Zavřete všechny aplikace, které by se mohly pokusit připojit k některé z těchto databází.
- U hlavních databází není možnost Alternativní umístění pro obnovení podporovaná. Doporučujeme obnovit hlavní databázi pomocí možnosti Obnovit jako soubory a pak provést obnovení pomocí
T-SQL
příkazů. msdb
Možnost Alternativní umístění pro obnovení amodel
alternativní umístění je podporována pouze v případě, že se název obnovené databáze liší od názvu cílové databáze. Pokud chcete obnovit stejný název s cílovou databází, doporučujeme provést obnovení pomocí možnosti Obnovit jako soubory a pak provést obnovení pomocíT-SQL
příkazů.
Obnovení databáze
K obnovení potřebujete následující oprávnění:
- Oprávnění operátora zálohování v trezoru, ve kterém provádíte obnovení.
- Přístup přispěvatele (zápisu) ke zdrojovému virtuálnímu počítači, který je zálohovaný.
- Přístup přispěvatele (zápisu) k cílovému virtuálnímu počítači:
- Pokud provádíte obnovení do stejného virtuálního počítače, jedná se o zdrojový virtuální počítač.
- Pokud provádíte obnovení do jiného umístění, jedná se o nový cílový virtuální počítač.
Obnovte následujícím způsobem:
Na webu Azure Portal přejděte do Centra zálohování a klikněte na Obnovit.
Jako typ zdroje dat vyberte SQL na virtuálním počítači Azure, vyberte databázi, která se má obnovit, a klikněte na Pokračovat.
V části Konfigurace obnovení určete, kde (nebo jak) obnovit data:
Alternativní umístění: Obnovte databázi do alternativního umístění a ponechte původní zdrojovou databázi.
Přepsání databáze: Obnovte data do stejné instance SQL Serveru jako původní zdroj. Tato možnost přepíše původní databázi.
Důležité
Pokud vybraná databáze patří do skupiny dostupnosti AlwaysOn, SQL Server neumožňuje přepsání databáze. K dispozici je pouze alternativní umístění .
Obnovit jako soubory: Místo obnovení jako databáze obnovte záložní soubory, které je možné obnovit jako databázi později na libovolném počítači, kde jsou soubory k dispozici pomocí aplikace SQL Server Management Studio.
Obnovení do alternativního umístění
V nabídce Obnovit konfiguraci v části Kde provést obnovení vyberte alternativní umístění.
Vyberte název a instanci SYSTÉMU SQL Server, do které chcete databázi obnovit.
Do pole Obnovený název databáze zadejte název cílové databáze.
Pokud je to možné, vyberte Možnost Přepsat, pokud databáze se stejným názvem již ve vybrané instanci SQL existuje.
Vyberte Bod obnovení a vyberte, jestli chcete provést obnovení k určitému bodu v čase , nebo provést obnovení do konkrétního bodu obnovení.
V nabídce Rozšířené konfigurace:
Pokud chcete po obnovení zachovat nefunkční databázi, povolte obnovení pomocí NORECOVERY.
Pokud chcete změnit umístění obnovení na cílovém serveru, zadejte nové cílové cesty.
Výběrem možnosti OK aktivujte obnovení. Sledujte průběh obnovení v oblasti Oznámení nebo ho sledujte v zobrazení Úlohy zálohování v trezoru.
Poznámka:
Obnovení k určitému bodu v čase je k dispozici pouze pro zálohy protokolů pro databáze, které jsou v režimu úplného a hromadně protokolovaného obnovení.
Obnovení a přepsání
V nabídce Obnovit konfiguraci v části Kde provést obnovení vyberte Přepsat databázi>OK.
V části Vybrat bod obnovení vyberte protokoly (bod v čase) a obnovte ho k určitému bodu v čase. Nebo vyberte Úplné a rozdílové obnovení k určitému bodu obnovení.
Poznámka:
Obnovení k určitému bodu v čase je k dispozici pouze pro zálohy protokolů pro databáze, které jsou v režimu úplného a hromadně protokolovaného obnovení.
Obnovení souborů
Pokud chcete zálohovaná data obnovit jako .bak soubory místo databáze, zvolte Obnovit jako soubory. Jakmile se soubory zadají do zadané cesty, můžete tyto soubory převést do libovolného počítače, kde je chcete obnovit jako databázi. Vzhledem k tomu, že tyto soubory můžete přesunout do libovolného počítače, můžete teď obnovit data napříč předplatnými a oblastmi.
V části Where a how to Restore (Kde a jak obnovit) vyberte Restore as files (Obnovit jako soubory).
Vyberte název SQL Serveru, do kterého chcete obnovit záložní soubory.
V cílové cestě na serveru zadejte cestu ke složce na serveru vybraném v kroku 2. Toto je umístění, kde služba vypíše všechny potřebné záložní soubory. Cesta ke sdílené síťové složce nebo cesta připojené sdílené složky Azure, pokud je zadaná jako cílová cesta, obvykle umožňuje snadnější přístup k těmto souborům jinými počítači ve stejné síti nebo se stejnou sdílenou složkou Azure připojenou k nim.
Poznámka:
Pokud chcete obnovit záložní soubory databáze ve sdílené složce Azure připojené k cílovému registrovanému virtuálnímu počítači, ujistěte se, že má nt AUTHORITY\SYSTEM přístup ke sdílené složce. Pomocí následujících kroků můžete udělit oprávnění ke čtení a zápisu připojenému k AFS na virtuálním počítači:
- Spusťte
PsExec -s cmd
vstup do prostředí NT AUTHORITY\SYSTEM.- Spusťte příkaz
cmdkey /add:<storageacct>.file.core.windows.net /user:AZURE\<storageacct> /pass:<storagekey>
. - Ověření přístupu pomocí
dir \\<storageacct>.file.core.windows.net\<filesharename>
- Spusťte příkaz
- Zahajte obnovení jako soubory ze služby Backup Vault do
\\<storageacct>.file.core.windows.net\<filesharename>
cesty.
PsExec si můžete stáhnout ze stránky Sysinternals .
- Spusťte
Vyberte OK.
Vyberte Bod obnovení a vyberte, jestli chcete provést obnovení k určitému bodu v čase , nebo provést obnovení do konkrétního bodu obnovení.
Při obnovení k určitému bodu v čase databáze SQL pomocí funkce Obnovit jako soubory uloží všechny body obnovení z úplného zálohování do vybraného bodu v čase. Potom můžete tyto soubory obnovit jako databázi na libovolném počítači, který existují, pomocí aplikace SQL Server Management Studio.
Obnovení k určitému časovému okamžiku
Pokud jste jako typ obnovení vybrali protokoly (bod v čase ), postupujte takto:
V části Obnovit datum a čas otevřete kalendář. V kalendáři se kalendářní data, která mají body obnovení, zobrazují tučně a aktuální datum je zvýrazněné.
Vyberte datum s body obnovení. Nemůžete vybrat data, která nemají žádné body obnovení.
Po výběru data se v grafu časové osy zobrazí dostupné body obnovení v souvislém rozsahu.
Zadejte čas pro obnovení v grafu časové osy nebo vyberte čas. Pak vyberte OK.
Částečné obnovení jako soubory
Služba Azure Backup rozhoduje o řetězu souborů, které se mají během obnovení stahovat jako soubory. Existují ale scénáře, kdy nebudete chtít znovu stáhnout celý obsah.
Například, když máte zásady zálohování týdenních úplných, denní rozdíly a protokoly a už jste stáhli soubory pro konkrétní rozdíl. Zjistili jste, že toto není správný bod obnovení a rozhodli jste se stáhnout rozdílový den následujícího dne. Teď potřebujete jenom rozdílový soubor, protože už máte úplné spuštění. S částečným obnovením jako možností souborů, kterou poskytuje Azure Backup, teď můžete z řetězu stahování vyloučit úplný obsah a stáhnout pouze rozdílový soubor.
Vyloučení typů záložních souborů
ExtensionSettingsOverrides.json je soubor JSON (JavaScript Object Notation), který obsahuje přepsání pro více nastavení služby Azure Backup pro SQL. V případě operace Částečné obnovení jako souborů musí být přidáno nové pole RecoveryPointTypesToBeExcludedForRestoreAsFiles
JSON. Toto pole obsahuje řetězcovou hodnotu, která označuje, které typy bodů obnovení by měly být vyloučeny v další operaci obnovení jako operace se soubory.
Na cílovém počítači, kde se mají stáhnout soubory, přejděte do složky C:\Program Files\Azure Workload Backup\bin.
Pokud ještě neexistuje, vytvořte nový soubor JSON s názvem "ExtensionSettingsOverrides.JSON".
Přidejte následující dvojici klíč-hodnota JSON.
{ "RecoveryPointTypesToBeExcludedForRestoreAsFiles": "ExcludeFull" }
Nevyžaduje se žádné restartování žádné služby. Služba Azure Backup se pokusí vyloučit typy zálohování v řetězu obnovení, jak je uvedeno v tomto souboru.
Pouze RecoveryPointTypesToBeExcludedForRestoreAsFiles
přebírá konkrétní hodnoty, které označují body obnovení, které mají být vyloučeny během obnovení. Pro SQL jsou tyto hodnoty:
- ExcludeFull (Jiné typy zálohování, jako jsou rozdílové zálohování a protokoly, se stáhnou, pokud jsou v řetězu bodů obnovení).
- ExcludeFullAndDifferential (Jiné typy zálohování, jako jsou protokoly, pokud se nacházejí v řetězu bodů obnovení)
- ExcludeFullAndIncremental (Jiné typy zálohování, jako jsou protokoly, se stáhnou, pokud se nacházejí v řetězu bodů obnovení).
- ExcludeFullAndDifferentialAndIncremental (Jiné typy zálohování, jako jsou protokoly, pokud se nacházejí v řetězu bodů obnovení)
Obnovení určitého bodu obnovení
Pokud jste jako typ obnovení vybrali možnost Full &Differential , postupujte takto:
Ze seznamu vyberte bod obnovení a výběrem možnosti OK dokončete proceduru bodu obnovení.
Poznámka:
Ve výchozím nastavení se zobrazují body obnovení z posledních 30 dnů. Body obnovení starší než 30 dnů můžete zobrazit tak, že vyberete Filtr a vyberete vlastní rozsah.
Obnovení databází s velkým počtem souborů
Pokud je celková velikost řetězců souborů v databázi větší než určitý limit, azure Backup ukládá seznam databázových souborů do jiné součásti pit, takže během operace obnovení nemůžete nastavit cílovou cestu obnovení. Soubory se místo toho obnoví do výchozí cesty SQL.
Obnovení databáze ze souboru .bak pomocí aplikace SSMS
Operaci Obnovit jako soubory můžete použít k obnovení databázových souborů ve .bak
formátu při obnovování z webu Azure Portal. Další informace.
Po dokončení obnovení .bak
souboru do virtuálního počítače Azure můžete aktivovat obnovení pomocí příkazů TSQL prostřednictvím SSMS.
Chcete-li obnovit soubory databáze do původní cesty na zdrojovém serveru, odeberte MOVE
klauzuli z dotazu obnovení TSQL.
Příklad
USE [master]
RESTORE DATABASE [<DBName>] FROM DISK = N'<.bak file path>'
Poznámka:
Na cílovém serveru byste neměli mít stejné databázové soubory (obnovení s nahrazením). Můžete také povolit okamžité inicializace souborů na cílovém serveru, abyste snížili režii při inicializaci souborů.
Pokud chcete přemístit soubory databáze z cílového obnovovacího serveru, můžete pomocí MOVE
klauzulí vytvořit příkaz TSQL.
USE [master]
RESTORE DATABASE [<DBName>] FROM DISK = N'<.bak file path>' MOVE N'<LogicalName1>' TO N'<TargetFilePath1OnDisk>', MOVE N'<LogicalName2>' TO N'<TargetFilePath2OnDisk>' GO
Příklad
USE [master]
RESTORE DATABASE [test] FROM DISK = N'J:\dbBackupFiles\test.bak' WITH FILE = 1, MOVE N'test' TO N'F:\data\test.mdf', MOVE N'test_log' TO N'G:\log\test_log.ldf', NOUNLOAD, STATS = 5
GO
Pokud databáze obsahuje více než dva soubory, můžete do dotazu pro obnovení přidat další MOVE
klauzule. SSMS můžete také použít k obnovení databáze pomocí .bak
souborů. Další informace.
Poznámka:
Pro velké obnovení databáze doporučujeme použít příkazy TSQL. Pokud chcete přemístit konkrétní soubory databáze, podívejte se na seznam databázových souborů ve formátu JSON vytvořeném během operace Obnovit jako soubory .
Obnovení mezi oblastmi
Jako jednu z možností obnovení umožňuje obnovení mezi oblastmi (CRR) obnovit databáze SQL hostované na virtuálních počítačích Azure v sekundární oblasti, což je spárovaná oblast Azure.
Pokud chcete funkci připojit, přečtěte si část Před zahájením.
Pokud chcete zjistit, jestli je povolený CRR, postupujte podle pokynů v tématu Konfigurace obnovení mezi oblastmi.
Zobrazení zálohovaných položek v sekundární oblasti
Pokud je povolený CRR, můžete zobrazit zálohované položky v sekundární oblasti.
- Na portálu přejděte k položkám zálohování trezoru>služby Recovery Services.
- Výběrem možnosti Sekundární oblast zobrazíte položky v sekundární oblasti.
Poznámka:
V seznamu se zobrazí jenom typy správy záloh podporující funkci CRR. V současné době je povolena pouze podpora obnovení dat sekundární oblasti do sekundární oblasti.
Obnovení v sekundární oblasti
Uživatelské prostředí obnovení sekundární oblasti bude podobné uživatelskému prostředí obnovení primární oblasti. Při konfiguraci podrobností v podokně Konfigurace obnovení pro konfiguraci obnovení se zobrazí výzva k zadání pouze parametrů sekundární oblasti. Trezor by měl existovat v sekundární oblasti a sql server by měl být zaregistrovaný do trezoru v sekundární oblasti.
Poznámka:
- Po aktivaci obnovení a ve fázi přenosu dat není možné úlohu obnovení zrušit.
- Úroveň role/přístupu potřebná k provedení operace obnovení v různých oblastech jsou role operátora zálohování v přístupu přispěvatele a přispěvatele (zápisu) na zdrojovém a cílovém virtuálním počítači. Pokud chcete zobrazit úlohy zálohování, čtenář služby Backup je minimální požadované oprávnění v předplatném.
- Cíl bodu obnovení pro zálohovaná data, která mají být k dispozici v sekundární oblasti, je 12 hodin. Proto když zapnete CRR, cíl bodu obnovení pro sekundární oblast je 12 hodin + doba trvání frekvence protokolu (to lze nastavit na minimálně 15 minut).
Seznamte se s minimálními požadavky na role pro obnovení mezi oblastmi.
Monitorování úloh obnovení sekundární oblasti
Na webu Azure Portal přejděte do centra>zálohování úloh zálohování.
Operace filtrování pro CrossRegionRestore pro zobrazení úloh v sekundární oblasti.
Obnovení mezi předplatnými
Azure Backup teď umožňuje obnovit databázi SQL do libovolného předplatného (podle následujících požadavků Azure RBAC) z bodu obnovení. Ve výchozím nastavení se Azure Backup obnoví do stejného předplatného, ve kterém jsou dostupné body obnovení.
S obnovením mezi předplatnými (CSR) máte flexibilitu obnovení do libovolného předplatného a jakéhokoli trezoru v rámci vašeho tenanta, pokud jsou k dispozici oprávnění k obnovení. Ve výchozím nastavení je csr povolené pro všechny trezory služby Recovery Services (existující a nově vytvořené trezory).
Poznámka:
- Obnovení mezi předplatnými můžete aktivovat z trezoru služby Recovery Services.
- CSR se podporuje jenom pro zálohování založené na streamování a nepodporuje se pro zálohování založené na snímcích.
- Obnovení mezi oblastmi (CRR) s CSR se nepodporuje.
Požadavky Azure RBAC
Typ operace | Operátor zálohování | Trezor služby Recovery Services | Alternativní operátor |
---|---|---|---|
Obnovení databáze nebo obnovení jako souborů | Virtual Machine Contributor |
Zdrojový virtuální počítač, který se zálohoval | Místo předdefinované role můžete zvážit vlastní roli, která má následující oprávnění: - Microsoft.Compute/virtualMachines/write - Microsoft.Compute/virtualMachines/read |
Virtual Machine Contributor |
Cílový virtuální počítač, ve kterém se databáze obnoví, nebo se vytvoří soubory. | Místo předdefinované role můžete zvážit vlastní roli, která má následující oprávnění: - Microsoft.Compute/virtualMachines/write - Microsoft.Compute/virtualMachines/read |
|
Backup Operator |
Cílový trezor služby Recovery Services |
Ve výchozím nastavení je v trezoru služby Recovery Services povolená csr. Pokud chcete aktualizovat nastavení obnovení trezoru služby Recovery Services, přejděte do části Vlastnosti>obnovení mezi předplatnými a proveďte požadované změny.
Další kroky
Správa a monitorování databází SQL Serveru zálohovaných službou Azure Backup