關(guān)于 Azure VM 中的 SQL Server 備份

來源: Microsoft
作者:Microsoft
時(shí)間:2021-12-14
15207
Azure 備份提供了一個(gè)基于流的專業(yè)解決方案,用于備份在 Azure VM 中運(yùn)行的 SQL Server。 此解決方案考慮到了 Azure 備份的零基礎(chǔ)結(jié)構(gòu)備份、長(zhǎng)期保留和集中管理的優(yōu)點(diǎn)。

Azure 備份提供了一個(gè)基于流的專業(yè)解決方案,用于備份在 Azure VM 中運(yùn)行的 SQL Server。 此解決方案考慮到了 Azure 備份的零基礎(chǔ)結(jié)構(gòu)備份、長(zhǎng)期保留和集中管理的優(yōu)點(diǎn)。 它還特別為 SQL Server 提供了以下優(yōu)勢(shì):

  1. 工作負(fù)荷感知備份,支持所有備份類型(完整備份、差異備份和日志備份)

  2. 15 分鐘恢復(fù)點(diǎn)目標(biāo) (RPO),頻繁備份日志

  3. 最多一秒的時(shí)點(diǎn)恢復(fù)

  4. 單數(shù)據(jù)庫(kù)級(jí)別的備份和還原

 備注

Azure VM 中 SQL 數(shù)據(jù)庫(kù)的基于快照的備份目前提供預(yù)覽版。 這個(gè)獨(dú)特的產(chǎn)品/服務(wù)將快照的優(yōu)勢(shì)(改進(jìn) RTO 并降低對(duì)服務(wù)器的影響)與頻繁日志備份的優(yōu)勢(shì)(實(shí)現(xiàn)低 RTO)相結(jié)合。 對(duì)于任何查詢/訪問權(quán)限,請(qǐng)?jiān)谥袑懭?nbsp;AskAzureBackupTeam@microsoft.com 。

若要查看我們目前支持的備份和還原方案,請(qǐng)參閱支持矩陣。

備份過程

此解決方案利用 SQL 本機(jī) API 來備份 SQL 數(shù)據(jù)庫(kù)。

  • 指定要保護(hù)的 SQL Server VM 并查詢其中的數(shù)據(jù)庫(kù)后,Azure 備份服務(wù)將在此 VM 上以 AzureBackupWindowsWorkload 擴(kuò)展名安裝工作負(fù)荷備份擴(kuò)展。

  • 此擴(kuò)展包含協(xié)調(diào)器和 SQL 插件。 協(xié)調(diào)器負(fù)責(zé)觸發(fā)多種操作(如配置備份、備份和還原)的工作流,插件負(fù)責(zé)實(shí)際數(shù)據(jù)流。

  • 為了能夠發(fā)現(xiàn)此 VM 上的數(shù)據(jù)庫(kù),Azure 備份將創(chuàng)建帳戶 NT SERVICE\AzureWLBackupPluginSvc。 此帳戶用于備份和還原,需要擁有 SQL sysadmin 權(quán)限。 該 NT SERVICE\AzureWLBackupPluginSvc 帳戶是一個(gè) NT SERVICE\AzureWLBackupPluginSvc,因此不需要任何密碼管理。 Azure 備份使用 NT AUTHORITY\SYSTEM 帳戶進(jìn)行數(shù)據(jù)庫(kù)發(fā)現(xiàn)/查詢,因此該帳戶需要是 SQL 上的公共登錄名。 如果 SQL Server VM 不是從 Azure 市場(chǎng)創(chuàng)建的,你可能會(huì)收到錯(cuò)誤 UserErrorSQLNoSysadminMembership。 如果發(fā)生此錯(cuò)誤,請(qǐng)遵照這些說明予以解決。

  • 在所選數(shù)據(jù)庫(kù)上觸發(fā)配置保護(hù)后,備份服務(wù)將使用備份計(jì)劃和其他策略詳細(xì)信息設(shè)置協(xié)調(diào)器,擴(kuò)展將這些詳細(xì)信息本地緩存在 VM 上。

  • 在計(jì)劃的時(shí)間,協(xié)調(diào)器與插件通信,并開始使用 VDI 從 SQL 服務(wù)器流式處理備份數(shù)據(jù)。

  • 插件將數(shù)據(jù)直接發(fā)送到恢復(fù)服務(wù)保管庫(kù),因此不需要暫存位置。 Azure 備份服務(wù)在存儲(chǔ)帳戶中加密和存儲(chǔ)數(shù)據(jù)。

  • 數(shù)據(jù)傳輸完成后,協(xié)調(diào)器通過備份服務(wù)確認(rèn)提交。

    SQL 備份體系結(jié)構(gòu)

開始之前

在開始之前,請(qǐng)驗(yàn)證以下要求:

  1. 確保有一個(gè) SQL Server 實(shí)例在 Azure 中運(yùn)行。 可以在市場(chǎng)中快速創(chuàng)建 SQL Server 實(shí)例。

  2. 查看功能注意事項(xiàng)和方案支持。

  3. 查看有關(guān)此方案的常見問題解答。

設(shè)置 VM 權(quán)限

當(dāng)你在 SQL Server 上運(yùn)行發(fā)現(xiàn)時(shí),Azure 備份會(huì)執(zhí)行以下操作:

  • 添加 AzureBackupWindowsWorkload 擴(kuò)展。

  • 創(chuàng)建 NT SERVICE\AzureWLBackupPluginSvc 帳戶,以發(fā)現(xiàn)虛擬機(jī)上的數(shù)據(jù)庫(kù)。 此帳戶用于備份和還原,需要擁有 SQL sysadmin 權(quán)限。

  • Azure 備份使用 NT AUTHORITY\SYSTEM 帳戶來發(fā)現(xiàn) VM 上運(yùn)行的數(shù)據(jù)庫(kù)。 此帳戶必須是 SQL 上的公共登錄名。

如果你未在 Azure 市場(chǎng)中創(chuàng)建 SQL Server VM,或者在 SQL 2008 或 2008 R2 上操作,可能會(huì)收到 UserErrorSQLNoSysadminMembership 錯(cuò)誤。

要了解在使用 Windows 2008 R2 上運(yùn)行的 SQL 2008 和 2008 R2 時(shí)如何授權(quán),請(qǐng)參閱此處 。

對(duì)于所有其他版本,可使用以下步驟解決權(quán)限問題:

  1. 使用擁有 SQL Server sysadmin 權(quán)限的帳戶登錄到 SQL Server Management Studio (SSMS)。 除非需要特殊權(quán)限,否則 Windows 身份驗(yàn)證應(yīng)該正常運(yùn)行。

  2. 在 SQL 服務(wù)器上,打開“安全/登錄名”文件夾。

    打開“安全/登錄名”文件夾以查看帳戶

  3. 右鍵單擊“登錄名”文件夾并選擇“新建登錄名”。 在“登錄名 - 新建”中,選擇“搜索”。

    在“登錄名 - 新建”對(duì)話框中選擇“搜索”

  4. 在虛擬機(jī)注冊(cè)和 SQL 發(fā)現(xiàn)階段已創(chuàng)建 Windows 虛擬服務(wù)帳戶 NT SSERVICE\AzureWLBackupPluginSvc。 輸入“輸入要選擇的對(duì)象名稱”中顯示的帳戶名。 選擇“檢查名稱”以解析名稱。 選擇“確定” 。

    選擇“檢查名稱”以解析未知的服務(wù)名稱

  5. 在“服務(wù)器角色”中,確保“sysadmin”角色已選中。 選擇“確定” 。 現(xiàn)在,所需的權(quán)限應(yīng)會(huì)存在。

    確保 sysadmin 服務(wù)器角色已選中

  6. 現(xiàn)在,將數(shù)據(jù)庫(kù)與恢復(fù)服務(wù)保管庫(kù)相關(guān)聯(lián)。 在 Azure 門戶的 "受保護(hù)的服務(wù)器" 列表中,右鍵單擊處于錯(cuò)誤狀態(tài)的服務(wù)器重新 發(fā)現(xiàn)數(shù)據(jù)庫(kù)。

    驗(yàn)證服務(wù)器是否擁有相應(yīng)的權(quán)限

  7. 在“通知”區(qū)域查看進(jìn)度。 找到選定的數(shù)據(jù)庫(kù)后,會(huì)顯示一條成功消息。

    部署成功消息

 備注

如果 SQL Server 安裝了多個(gè) SQL Server 實(shí)例,則必須將 NT Service\AzureWLBackupPluginSvc 帳戶的 sysadmin 權(quán)限添加到所有 SQL 實(shí)例。

為 SQL sysadmin 授予 SQL 2008 和 SQL 2008 R2 的權(quán)限

將 NT AUTHORITY\SYSTEM 和 NT Service\AzureWLBackupPluginSvc 登錄名添加到 SQL Server 實(shí)例:

  1. 在對(duì)象資源管理器中轉(zhuǎn)到該 SQL Server 實(shí)例。

  2. 導(dǎo)航到 "安全- > 登錄名"

  3. 右鍵單擊“登錄名”,并選擇“新建登錄名…”

    使用 SSMS 的新登錄名

  4. 轉(zhuǎn)到“常規(guī)”選項(xiàng)卡并輸入 NT AUTHORITY\SYSTEM 作為登錄名。

    SSMS 的登錄名

  5. 轉(zhuǎn)到“服務(wù)器角色”,選擇“public”和“sysadmin”角色。

    在 SSMS 中選擇角色

  6. 轉(zhuǎn)到“狀態(tài)”。 授予連接到數(shù)據(jù)庫(kù)引擎的權(quán)限,并將“登錄名”設(shè)置為“已啟用”。

    在 SSMS 中授予權(quán)限

  7. 選擇“確定”。

  8. 重復(fù)相同的步驟序列(上述步驟 1-7),將 NT Service\AzureWLBackupPluginSvc 登錄名添加到 SQL Server 實(shí)例。 如果該登錄名已存在,請(qǐng)確保它具有 sysadmin 服務(wù)器角色并處于這種狀態(tài):已授予連接到數(shù)據(jù)庫(kù)引擎的權(quán)限,且“登錄名”設(shè)置為“已啟用”。

  9. 在授予權(quán)限后,在門戶中重新發(fā)現(xiàn)數(shù)據(jù)庫(kù):保管庫(kù)- 備份基礎(chǔ)結(jié)構(gòu)-Azure VM 中的 工作負(fù)荷:

    在 Azure 門戶中重新發(fā)現(xiàn)數(shù)據(jù)庫(kù)

或者,可以在管理員模式下運(yùn)行以下 PowerShell 命令,來自動(dòng)授予權(quán)限。 實(shí)例名稱默認(rèn)設(shè)置為 MSSQLSERVER。 根據(jù)需要更改腳本中的實(shí)例名稱參數(shù):

PowerShell復(fù)制

param(
    [Parameter(Mandatory=$false)]
    [string] $InstanceName = "MSSQLSERVER")if ($InstanceName -eq "MSSQLSERVER")
{    $fullInstance = $env:COMPUTERNAME   # In case it is the default SQL Server Instance}else{    $fullInstance = $env:COMPUTERNAME + "\" + $InstanceName   # In case of named instance}try{
    sqlcmd.exe -S $fullInstance -Q "sp_addsrvrolemember 'NT Service\AzureWLBackupPluginSvc', 'sysadmin'" # Adds login with sysadmin permission if already not available}
catch
{    Write-Host "An error occurred:"
    Write-Host $_.Exception|format-list -force}try{
    sqlcmd.exe -S $fullInstance -Q "sp_addsrvrolemember 'NT AUTHORITY\SYSTEM', 'sysadmin'" # Adds login with sysadmin permission if already not available}
catch
{    Write-Host "An error occurred:"
    Write-Host $_.Exception|format-list -force}
立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于Microsoft,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對(duì)觀點(diǎn)贊同或支持。如有侵權(quán),請(qǐng)聯(lián)系管理員(zzx@kchuhai.com)刪除!
相關(guān)文章
Azure Arc為企業(yè)構(gòu)建安全的云基礎(chǔ)
Azure Arc為企業(yè)構(gòu)建安全的云基礎(chǔ)
隨著人工智能技術(shù)持續(xù)重塑企業(yè)運(yùn)營(yíng)方式,企業(yè)需要能夠處理海量數(shù)據(jù)的系統(tǒng),以支持實(shí)時(shí)洞察,同時(shí)幫助他們應(yīng)對(duì)跨IT和OT環(huán)境(包括云端、邊緣和本地)中運(yùn)營(yíng)、應(yīng)用、數(shù)據(jù)和基礎(chǔ)設(shè)施的協(xié)作難題。
Azure
微軟云
云服務(wù)
2024-12-172024-12-17
釋放.NET 9和Azure的AI技術(shù)與云計(jì)算潛力:更快、更智能、面向未來
釋放.NET 9和Azure的AI技術(shù)與云計(jì)算潛力:更快、更智能、面向未來
.NET 9現(xiàn)已正式發(fā)布,它為.NET平臺(tái)的發(fā)展掀開了嶄新的一頁,突破了性能、云原生開發(fā)和AI技術(shù)集成的邊界。
Azure
微軟云
云服務(wù)
2024-12-162024-12-16
Azure網(wǎng)絡(luò)管理現(xiàn)已具備智能Microsoft Copilot副駕駛能力
Azure網(wǎng)絡(luò)管理現(xiàn)已具備智能Microsoft Copilot副駕駛能力
智能Microsoft Copilot副駕駛for Azure網(wǎng)絡(luò)服務(wù)現(xiàn)已推出公共預(yù)覽版。
Azure
微軟云
云服務(wù)
2024-12-102024-12-10
Microsoft Fabric功能更新,借助AI驅(qū)動(dòng)的數(shù)據(jù)平臺(tái)加速應(yīng)用創(chuàng)新
Microsoft Fabric功能更新,借助AI驅(qū)動(dòng)的數(shù)據(jù)平臺(tái)加速應(yīng)用創(chuàng)新
一年前,我們正式推出了一款端到端數(shù)據(jù)平臺(tái),旨在幫助組織推動(dòng)人工智能轉(zhuǎn)型,并重新定義數(shù)據(jù)的連接、管理和分析方式。
Azure
微軟云
云服務(wù)
2024-12-092024-12-09
掃碼登錄
打開掃一掃, 關(guān)注公眾號(hào)后即可登錄/注冊(cè)
加載中
二維碼已失效 請(qǐng)重試
刷新
賬號(hào)登錄/注冊(cè)
個(gè)人VIP
小程序
快出海小程序
公眾號(hào)
快出海公眾號(hào)
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家