Automatizované zálohování v2 pro virtuální počítače Azure (Správce prostředků)
PLATÍ PRO:
SQL Server na virtuálním počítači Azure
automatizované zálohování v2 automaticky konfiguruje spravovanou zálohu na Microsoft Azure pro všechny stávající a nové databáze na virtuálním počítači Azure s SQL Server 2016 nebo novějšími edicemi standard, Enterprise nebo Developer. To vám umožní nakonfigurovat pravidelné zálohy databází, které využívají trvalé úložiště objektů BLOB v Azure. automatizované zálohování v2 závisí na rozšíření agenta SQL Server infrastruktury jako služby (IaaS).
Požadavky
Pokud chcete používat automatizované zálohování v2, Projděte si následující požadavky:
Operační systém:
- Windows Server 2012 R2 nebo novější
SQL Server verze/edice:
- SQL Server 2016 nebo vyšší: Developer, Standard nebo Enterprise
Poznámka
SQL Server 2014 najdete v tématu automatizované zálohování pro SQL Server 2014.
Konfigurace databáze:
- Cílové uživatelské databáze musí používat úplný model obnovení. Systémové databáze nemusejí používat úplný model obnovení. Pokud však požadujete, aby byly zálohy protokolů provedeny pro model nebo MSDB, je nutné použít úplný model obnovení. Další informace o dopadu plného modelu obnovení na zálohování najdete v části zálohování v rámci úplného modelu obnovení.
- SQL Server virtuální počítač se zaregistroval s rozšířením agenta SQL IaaS v režimu úplné správy.
- automatické zálohování spoléhá na úplné rozšíření agenta SQL Server IaaS. V takovém případě se automatizované zálohování podporuje jenom v cílových databázích z výchozí instance nebo z jedné pojmenované instance. pokud neexistuje žádná výchozí instance a více pojmenovaných instancí, rozšíření SQL IaaS selže a automatizované zálohování nebude fungovat.
Nastavení
Následující tabulka popisuje možnosti, které je možné nakonfigurovat pro automatizované zálohování v2. skutečné kroky konfigurace se liší v závislosti na tom, zda používáte příkazy Azure Portal nebo Azure Windows PowerShell.
Základní nastavení
| Nastavení | Rozsah (výchozí) | Description |
|---|---|---|
| Automatizované zálohování | Povolit/zakázat (zakázáno) | povolí nebo zakáže automatizované zálohování pro virtuální počítač Azure se spuštěným SQL Server 2016/2017 Developer, Standard nebo Enterprise. |
| Doba uchování | 1-30 dní (30 dní) | Počet dní uchovávání záloh. |
| Účet úložiště | Účet služby Azure Storage | Účet služby Azure Storage, který se má použít pro ukládání automatizovaných záložních souborů v úložišti objektů BLOB. V tomto umístění se vytvoří kontejner pro uložení všech záložních souborů. Konvence pojmenování záložních souborů zahrnuje datum, čas a GUID databáze. |
| Šifrování | Povolit/zakázat (zakázáno) | Povolí nebo zakáže šifrování. Pokud je povolené šifrování, certifikáty používané k obnovení zálohy se nacházejí v zadaném účtu úložiště. Používá stejný kontejner automatického zálohování se stejnou konvencí vytváření názvů. Pokud se změní heslo, vygeneruje se nový certifikát s tímto heslem, starý certifikát ale zůstane k obnovení předchozího zálohování. |
| Heslo | Text hesla | Heslo pro šifrovací klíče. Toto heslo je nutné pouze v případě, že je povoleno šifrování. Aby bylo možné obnovit šifrované zálohování, musíte mít správné heslo a související certifikát, který byl použit v době pořízení zálohy. |
Upřesnit nastavení
| Nastavení | Rozsah (výchozí) | Description |
|---|---|---|
| Zálohy systémových databází | Povolit/zakázat (zakázáno) | Když je tato funkce povolená, zálohuje taky systémové databáze: Master, MSDB a model. Pro databáze MSDB a model ověřte, zda jsou v režimu úplného obnovení, pokud chcete provádět zálohy protokolu. Zálohy protokolů se nikdy neprovádí pro hlavní server. A pro databázi TempDB nejsou vyřízeny žádné zálohy. |
| Plán zálohování | Ruční/automatizovaná (automatizovaná) | Ve výchozím nastavení se plán zálohování automaticky určí na základě nárůstu protokolu. Plán ručního zálohování umožňuje uživateli zadat časový interval pro zálohování. V takovém případě zálohy probíhají pouze v zadaném intervalu a v určeném časovém intervalu daného dne. |
| Frekvence úplného zálohování | Denně/týdně | Frekvence úplných záloh. V obou případech začíná úplné zálohování během dalšího naplánovaného časového intervalu. Pokud je vybrán týden, zálohování může zahrnovat několik dní, dokud nebudou všechny databáze úspěšně zálohovány. |
| Čas spuštění úplného zálohování | 00:00 – 23:00 (01:00) | Čas začátku daného dne, během kterého může probíhat úplné zálohování. |
| Časový interval úplného zálohování | 1 – 23 hodin (1 hodina) | Doba trvání časového intervalu daného dne, během kterého může probíhat úplné zálohování. |
| Frekvence zálohování protokolu | 5 – 60 minut (60 min.) | Frekvence zálohování protokolů. |
Porozumění četnosti úplného zálohování
Je důležité pochopit rozdíl mezi každodenním a týdenním úplným zálohováním. Vezměte v úvahu následující dva ukázkové scénáře.
Scénář 1: týdenní zálohování
máte SQL Server virtuální počítač, který obsahuje velký počet velkých databází.
V pondělí povolíte automatizované zálohování v2 s následujícími nastaveními:
- Plán zálohování: Ruční
- Frekvence úplného zálohování: týdně
- Čas spuštění úplného zálohování: 01:00
- Časový interval úplného zálohování: 1 hodina
To znamená, že další dostupné okno zálohování je úterý 1. až 1 hodinu. V tuto chvíli začne automatické zálohování zálohovat databáze po jednom. V tomto scénáři jsou vaše databáze dostatečně velké, než se úplné zálohování dokončí pro první pár databází. Nicméně po jedné hodině nejsou všechny databáze zálohovány.
Pokud k tomu dojde, začne automatizované zálohování po dobu jedné hodiny zálohovat zbývající databáze do dalšího dne. Pokud v tuto chvíli nejsou všechny databáze zálohované, zkusí to znovu další den ve stejnou dobu. To pokračuje, dokud nebudou všechny databáze úspěšně zálohovány.
Jakmile automatizované zálohování znovu dosáhne úterý, začne znovu zálohovat všechny databáze.
Tento scénář ukazuje, že automatizované zálohování funguje pouze v zadaném časovém období a každá databáze se zálohuje jednou týdně. To také ukazuje, že zálohování může být za několik dnů v případě, že není možné dokončit všechny zálohy za jeden den.
Scénář 2: Denní zálohování
Máte virtuální SQL Server, který obsahuje řadu rozsáhlých databází.
V pondělí povolíte automatizované zálohování v2 s následujícím nastavením:
- Plán zálohování: Ruční
- Frekvence úplného zálohování: Denně
- Čas spuštění úplného zálohování: 22:00
- Úplné časové období zálohování: 6 hodin
To znamená, že další dostupné okno zálohování je pondělí v 22:00 po dobu 6 hodin. V tu chvíli začne automatizované zálohování zálohovat databáze po jedné.
V úterý v 10 hodin po dobu 6 hodin se znovu spustí úplné zálohování všech databází.
Důležité
Zálohování se děje postupně během každého intervalu. V případě instancí s velkým počtem databází naplánujte interval zálohování s dostatečným časem pro všechny zálohy. Pokud se zálohování v daném intervalu nemůže dokončit, může dojít k přeskočení některých záloh a váš čas mezi zálohováním pro jednu databázi může být delší než nakonfigurovaný interval zálohování, což by mohlo negativně ovlivnit cíl bodu obnovení (RPO).
Konfigurace nových virtuálních počítače
Ke Azure Portal automatizovaného zálohování verze 2 při vytváření nového virtuálního počítače SQL Server 2016 nebo 2017 v modelu nasazení Resource Manager použijte nástroj .
Na kartě SQL Server nastavení vyberte Povolit v části Automatizované zálohování. Následující snímek Azure Portal obrazovky ukazuje SQL automatizovaného zálohování.

Poznámka
Automatizované zálohování v2 je ve výchozím nastavení zakázané.
Konfigurace existujících virtuálních počítače
U existujících SQL Server virtuálních počítačů přejděte do prostředku SQL virtual machines a pak vyberte Zálohy a nakonfigurujte automatizované zálohy.

Po dokončení uložte změny kliknutím na tlačítko Použít v dolní části stránky Nastavení zálohování.
Pokud automatizované zálohování povolíte poprvé, Azure na pozadí nakonfiguruje SQL Server agenta IaaS. Během této doby nemusí Azure Portal konfigurace automatizovaného zálohování. Počkejte několik minut, než se agent nainstaluje a nakonfiguruje. Potom se Azure Portal nová nastavení.
Konfigurace pomocí PowerShellu
Ke konfiguraci automatizovaného zálohování v2 můžete použít PowerShell. Než začnete, musíte:
- Stáhněte a nainstalujte si nejnovější Azure PowerShell.
- Otevřete Windows PowerShell a přidružte ho ke svému účtu pomocí Připojení-AzAccount.
Poznámka
Tento článek používá modul Azure Az PowerShell, což je doporučený modul PowerShellu pro interakci s Azure. Pokud chcete začít s modulem Az PowerShell, projděte si téma věnované instalaci Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.
Instalace SQL Server IaaS
Pokud jste z SQL Server virtuálního počítače z Azure Portal, mělo by SQL Server už nainstalované rozšíření IaaS. To, jestli je pro váš virtuální počítač nainstalovaný, můžete zjistit tak, že zavoláte příkaz Get-AzVM a prozkoumáte vlastnost Extensions.
$vmname = "vmname"
$resourcegroupname = "resourcegroupname"
(Get-AzVM -Name $vmname -ResourceGroupName $resourcegroupname).Extensions
Pokud je SQL Server agenta IaaS nainstalované, mělo by se zobrazit jako SqlIaaSAgent nebo SQLIaaSExtension. U vlastnosti ProvisioningState rozšíření by se měla zobrazit také možnost Úspěch.
Pokud není nainstalovaný nebo se nepodařilo ho zřídit, můžete ho nainstalovat pomocí následujícího příkazu. Kromě názvu virtuálního počítače a skupiny prostředků musíte také zadat oblast ($region), ve které se váš virtuální počítač nachází.
$region = "EASTUS2"
Set-AzVMSqlServerExtension -VMName $vmname `
-ResourceGroupName $resourcegroupname -Name "SQLIaasExtension" `
-Version "2.0" -Location $region
Ověření aktuálního nastavení
Pokud jste během zřizování povolili automatizované zálohování, můžete zkontrolovat aktuální konfiguraci pomocí PowerShellu. Spusťte příkaz Get-AzVMSqlServerExtension a prozkoumejte vlastnost AutoBackupSettings:
(Get-AzVMSqlServerExtension -VMName $vmname -ResourceGroupName $resourcegroupname).AutoBackupSettings
Měl by se zobrazit výstup podobný následujícímu:
Enable : True
EnableEncryption : False
RetentionPeriod : 30
StorageUrl : https://test.blob.core.windows.net/
StorageAccessKey :
Password :
BackupSystemDbs : False
BackupScheduleType : Manual
FullBackupFrequency : WEEKLY
FullBackupStartTime : 2
FullBackupWindowHours : 2
LogBackupFrequency : 60
Pokud se ve výstupu zobrazí, že možnost Povolit je nastavená na Hodnotu False, musíte povolit automatizované zálohování. Dobrou zprávou je, že automatizované zálohování povolíte a nakonfigurujete stejným způsobem. Tyto informace najdete v další části.
Poznámka
Pokud nastavení zkontrolujete hned po provedení změny, je možné, že vrátíte staré hodnoty konfigurace. Počkejte několik minut a znovu zkontrolujte nastavení, abyste se ujistili, že se změny použily.
Konfigurace automatizovaného zálohování v2
Pomocí PowerShellu můžete povolit automatizované zálohování a kdykoli upravit jeho konfiguraci a chování.
Nejprve vyberte nebo vytvořte účet úložiště pro záložní soubory. Následující skript vybere účet úložiště nebo ho vytvoří, pokud ještě neexistuje.
$storage_accountname = "yourstorageaccount"
$storage_resourcegroupname = $resourcegroupname
$storage = Get-AzStorageAccount -ResourceGroupName $resourcegroupname `
-Name $storage_accountname -ErrorAction SilentlyContinue
If (-Not $storage)
{ $storage = New-AzStorageAccount -ResourceGroupName $storage_resourcegroupname `
-Name $storage_accountname -SkuName Standard_GRS -Location $region }
Poznámka
Automatizované zálohování nepodporuje ukládání záloh do úložiště úrovně Premium, ale může zálohovat disky virtuálních počítačů, které používají Premium Storage.
Pak pomocí příkazu New-AzVMSqlServerAutoBackupConfig povolte a nakonfigurujte nastavení automatizovaného zálohování v2 pro ukládání záloh v účtu úložiště Azure. V tomto příkladu se zálohy nastaví tak, aby se uchovávaly po dobu 10 dnů. Zálohování systémových databází je povolené. Úplné zálohování se plánuje každý týden s časovým intervalem začínajícím na 20:00 na dvě hodiny. Zálohování protokolů se plánuje na každých 30 minut. Druhý příkaz Set-AzVMSqlServerExtension aktualizuje zadaný virtuální počítač Azure pomocí těchto nastavení.
$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -Enable `
-RetentionPeriodInDays 10 -StorageContext $storage.Context `
-ResourceGroupName $storage_resourcegroupname -BackupSystemDbs `
-BackupScheduleType Manual -FullBackupFrequency Weekly `
-FullBackupStartHour 20 -FullBackupWindowInHours 2 `
-LogBackupFrequencyInMinutes 30
Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
-VMName $vmname -ResourceGroupName $resourcegroupname
Instalace a konfigurace agenta IaaS může SQL Server několik minut.
Pokud chcete povolit šifrování, upravte předchozí skript tak, aby předal parametr EnableEncryption spolu s heslem (zabezpečený řetězec) pro parametr CertificatePassword. Následující skript povolí nastavení automatizovaného zálohování v předchozím příkladu a přidá šifrování.
$password = "P@ssw0rd"
$encryptionpassword = $password | ConvertTo-SecureString -AsPlainText -Force
$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -Enable `
-EnableEncryption -CertificatePassword $encryptionpassword `
-RetentionPeriodInDays 10 -StorageContext $storage.Context `
-ResourceGroupName $storage_resourcegroupname -BackupSystemDbs `
-BackupScheduleType Manual -FullBackupFrequency Weekly `
-FullBackupStartHour 20 -FullBackupWindowInHours 2 `
-LogBackupFrequencyInMinutes 30
Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
-VMName $vmname -ResourceGroupName $resourcegroupname
Pokud chcete ověřit, že se vaše nastavení použilo, ověřte konfiguraci automatizovaného zálohování.
Zakázání automatizovaného zálohování
Pokud chcete automatizovanou zálohu zakázat, spusťte stejný skript bez parametru -Enable pro příkaz New-AzVMSqlServerAutoBackupConfig. Absence parametru -Enable signalizuje příkaz k zakázání funkce. Stejně jako u instalace může i zakázání automatizovaného zálohování trvat několik minut.
$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -ResourceGroupName $storage_resourcegroupname
Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
-VMName $vmname -ResourceGroupName $resourcegroupname
Ukázkový skript
Následující skript obsahuje sadu proměnných, které můžete přizpůsobit a povolit a nakonfigurovat automatizované zálohování pro váš virtuální počítač. V takovém případě možná budete muset skript přizpůsobit podle svých požadavků. Pokud byste například chtěli zakázat zálohování systémových databází nebo povolit šifrování, muset byste provést změny.
$vmname = "yourvmname"
$resourcegroupname = "vmresourcegroupname"
$region = "Azure region name such as EASTUS2"
$storage_accountname = "storageaccountname"
$storage_resourcegroupname = $resourcegroupname
$retentionperiod = 10
$backupscheduletype = "Manual"
$fullbackupfrequency = "Weekly"
$fullbackupstarthour = "20"
$fullbackupwindow = "2"
$logbackupfrequency = "30"
# ResourceGroupName is the resource group which is hosting the VM where you are deploying the SQL Server IaaS Extension
Set-AzVMSqlServerExtension -VMName $vmname `
-ResourceGroupName $resourcegroupname -Name "SQLIaasExtension" `
-Version "2.0" -Location $region
# Creates/use a storage account to store the backups
$storage = Get-AzStorageAccount -ResourceGroupName $resourcegroupname `
-Name $storage_accountname -ErrorAction SilentlyContinue
If (-Not $storage)
{ $storage = New-AzStorageAccount -ResourceGroupName $storage_resourcegroupname `
-Name $storage_accountname -SkuName Standard_GRS -Location $region }
# Configure Automated Backup settings
$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -Enable `
-RetentionPeriodInDays $retentionperiod -StorageContext $storage.Context `
-ResourceGroupName $storage_resourcegroupname -BackupSystemDbs `
-BackupScheduleType $backupscheduletype -FullBackupFrequency $fullbackupfrequency `
-FullBackupStartHour $fullbackupstarthour -FullBackupWindowInHours $fullbackupwindow `
-LogBackupFrequencyInMinutes $logbackupfrequency
# Apply the Automated Backup settings to the VM
Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
-VMName $vmname -ResourceGroupName $resourcegroupname
Monitorování
Pokud chcete monitorovat automatizované zálohování SQL Server 2016/2017, máte dvě hlavní možnosti. Vzhledem k tomu, že automatizované zálohování SQL Server funkci spravovaného zálohování, platí stejné techniky monitorování pro obojí.
Nejprve se můžete dotazovat na stav voláním msdb.managed_backup.sp_get_backup_diagnostics. Nebo dotaz na msdb.managed_backup.fn_get_health_status table-valued.
Další možností je využít výhod integrované funkce Databázová pošta oznámení.
- Voláním uložené msdb.managed_backup.sp_set_parameter přiřaďte e-mailovou adresu k parametru SSMBackup2WANotificationEmailIds.
- Povolte SendGrid k odesílání e-mailů z virtuálního počítače Azure.
- Ke konfiguraci serveru SMTP a uživatelského jména použijte Databázová pošta. Můžete nakonfigurovat Databázová pošta v SQL Server Management Studio nebo pomocí příkazů Transact-SQL. Další informace najdete v tématu Databázová pošta.
- Nakonfigurujte SQL Server Agent pro použití Databázová pošta.
- Ověřte, že je povolený port SMTP přes bránu firewall místního virtuálního počítače i skupinu zabezpečení sítě pro virtuální počítač.
Další kroky
Automatizované zálohování v2 konfiguruje spravované zálohování na virtuálních počítači Azure. Proto je důležité si prohlédněte dokumentaci ke službě Managed Backup, abyste porozuměli chování a důsledkům.
Další pokyny k zálohování a obnovení SQL Server virtuálních počítačích Azure najdete v následujícím článku: Zálohování a obnovení SQL Server virtuálních počítačích Azure.
Informace o dalších dostupných úlohách automatizace najdete v SQL Server rozšíření agenta IaaS.
Další informace o spouštění virtuálních SQL Server virtuálních počítačích Azure najdete v tématu SQL Server přehled virtuálních počítačů Azure.