自動(dòng)備份將在運(yùn)行 SQL Server 2014 Standard 或 Enterprise 的 Azure VM 上自動(dòng)為所有現(xiàn)有數(shù)據(jù)庫和新數(shù)據(jù)庫配置托管備份到 Azure油湖。 這樣缕陕,便可以配置使用持久 Azure Blob 存儲的定期數(shù)據(jù)庫備份清焕。 自動(dòng)備份依賴于SQL Server IaaS 代理擴(kuò)展腋腮。
Note
Azure 具有用于創(chuàng)建和處理資源的兩個(gè)不同的部署模型:Resource Manager 和經(jīng)典。 本文介紹如何使用 Resource Manager 部署模型顺献。Azure 建議對新的部署使用該模型塌鸯,而不是經(jīng)典部署模型瞎嬉。
先決條件
若要使用自動(dòng)備份兜蠕,請考慮以下先決條件:
操作系統(tǒng):
Windows Server 2012
Windows Server 2012 R2
Windows Server 2016
SQL Server 版本:
SQL Server 2014 Standard
SQL Server 2014 Enterprise
數(shù)據(jù)庫配置:
目標(biāo)數(shù)據(jù)庫必須使用完整恢復(fù)模式扰肌。 有關(guān)對備份使用完整恢復(fù)模型產(chǎn)生的影響的詳細(xì)信息,請參閱Backup Under the Full Recovery Model(使用完整恢復(fù)模型的備份)熊杨。
目標(biāo)數(shù)據(jù)庫必須位于默認(rèn) SQL Server 實(shí)例上曙旭。 SQL Server IaaS 擴(kuò)展不支持命名實(shí)例。
Azure 部署模型:
Resource Manager
Azure PowerShell:
如果打算使用 PowerShell 配置自動(dòng)備份晶府,請安裝最新的 Azure PowerShell 命令桂躏。
Note
自動(dòng)備份依賴 SQL Server IaaS 代理擴(kuò)展。 當(dāng)前的 SQL 虛擬機(jī)庫映像默認(rèn)添加此擴(kuò)展川陆。 有關(guān)詳細(xì)信息沼头,請參閱SQL Server IaaS 代理擴(kuò)展。
設(shè)置
下表描述了可為自動(dòng)備份配置的選項(xiàng)书劝。 實(shí)際配置步驟根據(jù)你使用的是 Azure 門戶還是 Azure Windows PowerShell 命令而有所不同。
設(shè)置范圍(默認(rèn)值)說明
自動(dòng)備份啟用/禁用(已禁用)為運(yùn)行 SQL Server 2014 Standard 或 Enterprise 的 Azure VM 啟用或禁用自動(dòng)備份土至。
保留期1-30 天(30 天)保留備份的天數(shù)购对。
存儲帳戶Azure 存儲帳戶用于在 Blob 存儲中存儲自動(dòng)備份文件的 Azure 存儲帳戶。 會在此位置創(chuàng)建容器陶因,用于存儲所有備份文件骡苞。 備份文件命名約定包括日期、時(shí)間和計(jì)算機(jī)名稱楷扬。
加密啟用/禁用(已禁用)啟用或禁用加密解幽。 啟用加密時(shí),用于還原備份的證書會使用相同的命名約定存放在同一automaticbackup容器中的指定存儲帳戶內(nèi)烘苹。 如果密碼發(fā)生更改躲株,則使用該密碼生成新證書,但舊證書在備份之前仍會還原镣衡。
密碼密碼文本加密密鑰的密碼霜定。 僅當(dāng)啟用了加密時(shí)才需要此設(shè)置档悠。 若要還原加密的備份,必須具有創(chuàng)建該備份時(shí)使用的正確密碼和相關(guān)證書望浩。
門戶中的配置
可以在預(yù)配期間或針對現(xiàn)有的 SQL Server 2014 VM 使用 Azure 門戶來配置自動(dòng)備份辖所。
新的 VM
在 Resource Manager 部署模型中創(chuàng)建新的 SQL Server 2014 虛擬機(jī)時(shí),可以使用 Azure 門戶配置自動(dòng)備份磨德。
在“SQL Server 設(shè)置”邊欄選項(xiàng)卡中缘回,選擇“自動(dòng)備份”。 下面的 Azure 門戶屏幕截圖顯示了“SQL 自動(dòng)備份”邊欄選項(xiàng)卡典挑。
若要了解上下文酥宴,請參閱有關(guān)在 Azure 中預(yù)配 SQL Server 虛擬機(jī)的完整主題。
現(xiàn)有 VM
對于現(xiàn)有的 SQL Server 虛擬機(jī)搔弄,請選擇 SQL Server 虛擬機(jī)幅虑。 然后選擇“設(shè)置”邊欄選項(xiàng)卡的“SQL Server 配置”部分。
在“SQL Server 配置”邊欄選項(xiàng)卡的“自動(dòng)備份”部分顾犹,單擊“編輯”按鈕倒庵。
完成后,單擊“SQL Server 配置”邊欄選項(xiàng)卡底部的“確定”按鈕保存更改炫刷。
首次啟用自動(dòng)備份時(shí)擎宝,Azure 會在后臺配置 SQL Server IaaS 代理。 在此期間浑玛,Azure 門戶可能不會顯示自動(dòng)備份已配置绍申。 請等待幾分鐘,以便安裝和配置代理顾彰。 之后极阅,Azure 門戶將反映新設(shè)置。
Note
也可以使用模板來配置自動(dòng)備份涨享。 有關(guān)詳細(xì)信息筋搏,請參閱Azure quickstart template for Automated Backup(用于自動(dòng)備份的 Azure 快速入門模板)。
使用 PowerShell 進(jìn)行配置
可使用 PowerShell 配置自動(dòng)備份厕隧。 開始之前奔脐,必須:
打開 Windows PowerShell 并將其關(guān)聯(lián)到帳戶吁讨。 可以遵循預(yù)配主題的配置訂閱部分中的步驟執(zhí)行此操作髓迎。
安裝 SQL IaaS 擴(kuò)展
如果通過 Azure 門戶預(yù)配了 SQL Server 虛擬機(jī),應(yīng)已安裝 SQL Server IaaS 擴(kuò)展建丧。 可通過調(diào)用Get-AzureRmVM命令并檢查Extensions屬性排龄,來確定是否為 VM 安裝了該擴(kuò)展。
PowerShell復(fù)制
$vmname="vmname"$resourcegroupname="resourcegroupname"(Get-AzureRmVM-Name$vmname-ResourceGroupName$resourcegroupname).Extensions
如果已安裝 SQL Server IaaS 代理擴(kuò)展茶鹃,應(yīng)會看到列出的“SqlIaaSAgent”或“SQLIaaSExtension”涣雕。ProvisioningState應(yīng)顯示“Succeeded”艰亮。
如果未安裝或未能預(yù)配該擴(kuò)展,可使用以下命令來安裝挣郭。 除了 VM 名稱和資源組以外迄埃,還必須指定 VM 所在的區(qū)域 ($region)。
PowerShell復(fù)制
$region="EASTUS2"Set-AzureRmVMSqlServerExtension-VMName$vmname`-ResourceGroupName$resourcegroupname-Name"SQLIaasExtension"`-Version"1.2"-Location$region
驗(yàn)證當(dāng)前設(shè)置
如果在預(yù)配期間啟用了自動(dòng)備份兑障,可以使用 PowerShell 檢查當(dāng)前配置侄非。 運(yùn)行Get-AzureRmVMSqlServerExtension命令并檢查AutoBackupSettings屬性:
PowerShell復(fù)制
(Get-AzureRmVMSqlServerExtension-VMName$vmname-ResourceGroupName$resourcegroupname).AutoBackupSettings
應(yīng)會看到類似于下面的輸出:
復(fù)制
Enable? ? ? ? ? ? ? ? ? ? ? : False
EnableEncryption? ? ? ? ? ? : False
RetentionPeriod? ? ? ? ? ? : -1
StorageUrl? ? ? ? ? ? ? ? ? : NOTSET
StorageAccessKey? ? ? ? ? ? :
Password? ? ? ? ? ? ? ? ? ? :
BackupSystemDbs? ? ? ? ? ? : False
BackupScheduleType? ? ? ? ? :
FullBackupFrequency? ? ? ? :
FullBackupStartTime? ? ? ? :
FullBackupWindowHours? ? ? :
LogBackupFrequency? ? ? ? ? :
如果輸出顯示Enable設(shè)置為False,則必須啟用自動(dòng)備份流译。 幸運(yùn)的是逞怨,可通過相同的方式啟用和配置自動(dòng)備份。 有關(guān)信息福澡,請參閱下一部分叠赦。
Note
如果在進(jìn)行更改后立即檢查設(shè)置,看到的可能是舊配置值革砸。 請等待幾分鐘再檢查設(shè)置除秀,確保更改已應(yīng)用。
配置自動(dòng)備份
隨時(shí)可以使用 PowerShell 來啟用自動(dòng)備份以及修改其配置和行為算利。
首先册踩,為備份文件選擇或創(chuàng)建存儲帳戶。 以下腳本選擇一個(gè)存儲帳戶效拭,或者創(chuàng)建一個(gè)存儲帳戶(如果不存在)暂吉。
PowerShell復(fù)制
$storage_accountname="yourstorageaccount"$storage_resourcegroupname=$resourcegroupname$storage=Get-AzureRmStorageAccount-ResourceGroupName$resourcegroupname`-Name$storage_accountname-ErrorActionSilentlyContinueIf(-Not$storage)? ? {$storage=New-AzureRmStorageAccount-ResourceGroupName$storage_resourcegroupname`-Name$storage_accountname-SkuNameStandard_GRS-Location$region}
Note
自動(dòng)備份不支持在高級存儲中存儲備份,但可以從使用高級存儲的 VM 磁盤創(chuàng)建備份缎患。
然后慕的,使用New-AzureRmVMSqlServerAutoBackupConfig命令啟用并配置自動(dòng)備份設(shè)置,以便在 Azure 存儲帳戶中存儲備份挤渔。 在本示例中业稼,備份設(shè)置為保留 10 天。 第二個(gè)命令Set-AzureRmVMSqlServerExtension使用這些設(shè)置更新指定的 Azure VM蚂蕴。
PowerShell復(fù)制
$autobackupconfig=New-AzureRmVMSqlServerAutoBackupConfig-Enable`-RetentionPeriodInDays10-StorageContext$storage.Context `-ResourceGroupName$storage_resourcegroupnameSet-AzureRmVMSqlServerExtension-AutoBackupSettings$autobackupconfig`-VMName$vmname-ResourceGroupName$resourcegroupname
可能需要花費(fèi)幾分鐘來安裝和配置 SQL Server IaaS 代理。
Note
還有僅適用于 SQL Server 2016 和自動(dòng)備份 v2 的其他New-AzureRmVMSqlServerAutoBackupConfig設(shè)置俯邓。 SQL Server 2014 不支持以下設(shè)置:BackupSystemDbs骡楼、BackupScheduleType、FullBackupFrequency稽鞭、FullBackupStartHour鸟整、FullBackupWindowInHours和LogBackupFrequencyInMinutes。 如果嘗試在 SQL Server 2014 虛擬機(jī)上配置這些設(shè)置朦蕴,則不存在錯(cuò)誤篮条,但不會應(yīng)用這些設(shè)置弟头。
要啟用加密,請修改上述腳本涉茧,使其將EnableEncryption參數(shù)連同CertificatePassword參數(shù)的密碼(安全字符串)一起傳遞赴恨。 以下腳本啟用上一示例中的自動(dòng)備份設(shè)置,并添加加密伴栓。
PowerShell復(fù)制
$password="P@ssw0rd"$encryptionpassword=$password|ConvertTo-SecureString-AsPlainText-Force$autobackupconfig=New-AzureRmVMSqlServerAutoBackupConfig-Enable`-EnableEncryption-CertificatePassword$encryptionpassword`-RetentionPeriodInDays10-StorageContext$storage.Context `-ResourceGroupName$storage_resourcegroupnameSet-AzureRmVMSqlServerExtension-AutoBackupSettings$autobackupconfig`-VMName$vmname-ResourceGroupName$resourcegroupname
若要確認(rèn)是否應(yīng)用了這些設(shè)置伦连,請檢查自動(dòng)備份配置。
禁用自動(dòng)備份
若要禁用自動(dòng)備份钳垮,請運(yùn)行同一個(gè)腳本惑淳,但不要為New-AzureRmVMSqlServerAutoBackupConfig命令指定-Enable參數(shù)。 缺少-Enable參數(shù)會向該命令發(fā)出指示以禁用此功能饺窿。 與安裝一樣歧焦,可能需要花費(fèi)幾分鐘時(shí)間來禁用自動(dòng)備份。
PowerShell復(fù)制
$autobackupconfig=New-AzureRmVMSqlServerAutoBackupConfig-ResourceGroupName$storage_resourcegroupnameSet-AzureRmVMSqlServerExtension-AutoBackupSettings$autobackupconfig`-VMName$vmname-ResourceGroupName$resourcegroupname
示例腳本
以下腳本提供一組可自定義的變量肚医,用來為 VM 啟用和配置自動(dòng)備份绢馍。 根據(jù)具體的情況,可能需要根據(jù)要求自定義該腳本忍宋。 例如痕貌,如果想要禁用系統(tǒng)數(shù)據(jù)庫備份或啟用加密,則必須更改該腳本糠排。
PowerShell復(fù)制
$vmname="yourvmname"$resourcegroupname="vmresourcegroupname"$region="Azure region name such as EASTUS2"$storage_accountname="storageaccountname"$storage_resourcegroupname=$resourcegroupname$retentionperiod=10# ResourceGroupName is the resource group which is hosting the VM where you are deploying the SQL IaaS ExtensionSet-AzureRmVMSqlServerExtension-VMName$vmname`-ResourceGroupName$resourcegroupname-Name"SQLIaasExtension"`-Version"1.2"-Location$region# Creates/use a storage account to store the backups$storage=Get-AzureRmStorageAccount-ResourceGroupName$resourcegroupname`-Name$storage_accountname-ErrorActionSilentlyContinueIf(-Not$storage)? ? {$storage=New-AzureRmStorageAccount-ResourceGroupName$storage_resourcegroupname`-Name$storage_accountname-SkuNameStandard_GRS-Location$region}# Configure Automated Backup settings$autobackupconfig=New-AzureRmVMSqlServerAutoBackupConfig-Enable`-RetentionPeriodInDays$retentionperiod-StorageContext$storage.Context `-ResourceGroupName$storage_resourcegroupname# Apply the Automated Backup settings to the VMSet-AzureRmVMSqlServerExtension-AutoBackupSettings$autobackupconfig`-VMName$vmname-ResourceGroupName$resourcegroupname
后續(xù)步驟
自動(dòng)備份會在 Azure VM 上配置托管備份舵稠。 因此,請務(wù)必查看有關(guān)托管備份的文檔入宦,了解其行為和影響哺徊。
可以在以下主題中找到針對 Azure VM 上的 SQL Server 的其他備份和還原指導(dǎo):Azure 虛擬機(jī)中 SQL Server 的備份和還原。
有關(guān)其他可用自動(dòng)化任務(wù)的信息乾闰,請參閱SQL Server IaaS 代理擴(kuò)展落追。
有關(guān)在 Azure VM 中運(yùn)行 SQL Server 的詳細(xì)信息,請參閱Azure 虛擬機(jī)中的 SQL Server 概述涯肩。
立即訪問http://market.azure.cn