在 Azure VM 中備份 SQL Server 資料庫

本教學課程說明如何將執行於 Azure VM 上的 SQL Server 資料庫備份至 Azure 備份復原服務保存庫。 在本文中,您將學會如何:

  • 建立和設定保存庫。
  • 探索資料庫,並設定備份。
  • 為資料庫設定自動保護。
  • 執行隨選備份。

必要條件

備份 SQL Server 資料庫之前,請先檢查下列條件:

  1. 在與裝載 SQL Server 執行個體的 VM 相同的區域或地區設定中識別或建立復原服務保存庫。
  2. 檢查備份 SQL 資料庫所需的 VM 權限
  3. 確認 VM 具有網路連線
  4. 確認 SQL Server 資料庫的命名符合 Azure 備份的命名方針
  5. 確認您未針對資料庫啟用任何其他備份解決方案。 在設定此案例前,請停用所有其他的 SQL Server 備份。 您可以同時為 Azure VM 以及在該 VM 上執行的 SQL Server 資料庫啟用 Azure 備份,而不會發生任何衝突。

建立復原服務保存庫

復原服務保存庫是一個管理實體,可儲存一段時間內所建立的復原點,並提供介面以供執行備份相關作業。 這些作業包括製作隨選備份、執行還原,以及建立備份原則。

若要建立復原服務保存庫:

  1. 登入 Azure 入口網站

  2. 搜尋備份中心,然後移至 [備份中心] 儀表板。

    Screenshot that shows where to search for and select 'Backup center'.

  3. 在 [概觀] 窗格中,選取 [保存庫]

    Screenshot of the button for creating a Recovery Services vault.

  4. 選取 [復原服務保存庫]>[繼續]

    Screenshot that shows where to select Recovery Services as the vault type.

  5. 在 [復原服務保存庫] 窗格中,輸入下列值:

    • 訂用帳戶:選取要使用的訂用帳戶。 如果您是唯一一個訂用帳戶的成員,就會看到該名稱。 如果您不確定要使用哪個訂用帳戶,請使用預設的訂用帳戶。 只有在您的公司或學校帳戶與多個 Azure 訂用帳戶相關聯時,才會有多個選擇。

    • 資源群組:使用現有資源群組,或建立新的群組。 若要檢視訂用帳戶中可用的資源群組清單,請選取 [使用現有項目],然後在下拉式清單中選取資源。 若要建立新的資源群組,請選取 [新建],然後輸入名稱。 如需有關資源群組的詳細資訊,請參閱 Azure Resource Manager 概觀

    • 保存庫名稱:輸入自訂名稱以識別保存庫。 這個名稱對 Azure 訂用帳戶必須是唯一的。 指定的名稱至少要有 2 個字元,但不能超過 50 個字元。 名稱開頭必須是字母,且只能包含字母、數字和連字號。

    • 區域:選取保存庫的地理區域。 若要建立保存庫來協助保護任何資料來源,保存庫必須與資料來源位於相同區域。

      重要

      如果不確定資料來源的位置,請關閉視窗。 在入口網站中,移至您的資源清單。 如果您在多個區域中有資料來源,請為每個區域建立一個復原服務保存庫。 先在第一個位置建立保存庫,然後再於另一個位置建立保存庫。 不需要指定用來儲存備份資料的儲存體帳戶。 復原服務保存庫和 Azure 備份會自動處理該事宜。

    Screenshot that shows fields for configuring a Recovery Services vault.

  6. 提供值之後,選取 [檢閱 + 建立]

  7. 若要完成建立復原服務保存庫,請選取 [建立]

    建立復原服務保存庫可能需要一點時間。 監視右上角 [通知] 區域中的狀態通知。 保存庫建立之後,就會出現在復原服務保存庫的清單中。 如果保存庫未出現,請選取 [重新整理]

    Screenshot that shows the button for refreshing the list of backup vaults.

注意

Azure 備份現在支援不可變保存庫,可協助您確保復原點建立後,一直到其備份原則中設定的到期日前無法刪除。 您可以讓此不變性無法逆轉,以最大程度防止備份資料受到各種威脅,包括勒索軟體攻擊和惡意執行者。 深入了解

探索 SQL Server 資料庫

探索在 VM 上執行的資料庫。

  1. Azure 入口網站中,移至 [備份中心],然後按一下 [+備份]

  2. 選取 [Azure VM 中的 SQL] 做為資料來源類型,選取您已建立的復原服務保存庫,然後按一下 [繼續]

    Screenshot showing to select Backup to view the databases running in a VM.

  3. 在 [備份目標]>[探索 VM 中的 DB] 中,選取 [開始探索] 以搜尋訂用帳戶中未受保護的 VM。 搜尋可能需要一些時間,視訂用帳戶中未受保護的虛擬機器數目而定。

    • 在探索之後,未受保護的 VM 應該會出現在清單中,並依照名稱和資源群組列出。

    • 如果 VM 未如預期列出,請檢查該 VM 是否已備份在保存庫中。

    • 多個 VM 可以有相同名稱,但會屬於不同的資源群組。

      Backup is pending during search for DBs in VMs

  4. 在 VM 清單中,選取執行 SQL Server 資料庫的 VM,然後選取 [探索資料庫]>

  5. 在 [通知] 區域中追蹤資料庫探索進度。 此作業可能需要一些時間才能完成,視 VM 上的資料庫數目而定。 探索到選取的資料庫之後,即會出現成功訊息。

    Deployment success message

  6. Azure 備份會探索 VM 上的所有 SQL Server 資料庫。 在探索期間,背景中會發生下列情況:

    • Azure 備份向用來備份工作負載的保存庫註冊 VM。 已註冊 VM 上的所有資料庫都只能備份至此保存庫。

    • Azure Backup 在 VM 上安裝 AzureBackupWindowsWorkload 擴充功能。 SQL 資料庫上不會安裝代理程式。

    • Azure Backup 在 VM 上建立服務帳戶 NT Service\AzureWLBackupPluginSvc

      • 所有備份和還原作業都會使用此服務帳戶。
      • NT Service\AzureWLBackupPluginSvc 需要 SQL 系統管理員權限。 在 Azure Marketplace 中建立的所有 SQL Server VM 都會預先安裝 SqlIaaSExtensionAzureBackupWindowsWorkload 延伸模組會使用 SQLIaaSExtension 來自動取得必要的權限。
    • 如果您尚未從 Marketplace 建立 VM,則 VM 不會安裝 SqlIaaSExtension,因此探索作業將會失敗,並顯示錯誤訊息 UserErrorSQLNoSysAdminMembership。 請遵循指示來修正此問題。

      Select the VM and database

設定備份

請依照下列方式設定備份:

  1. 在 [備份目標]>[步驟 2:設定備份] 中,選取 [設定備份]

    Select Configure Backup

  2. 選取 [新增資源] 以查看所有已註冊的可用性群組和獨立 SQL Server 執行個體。

    Select add resources

  3. 在 [選取要備份的項目] 畫面中,選取資料列左邊的箭號,即可展開該執行個體或 Always On 可用性群組中所有未受保護的資料庫清單。

    Select items to backup

  4. 選擇您要保護的資料庫,然後選取 [確定]

    Protecting the database

    為了將備份負載最佳化,Azure 備份會將每個備份作業的資料庫數目上限設為 50。

    • 若要保護 50 個以上的資料庫,請設定多個備份。

    • 若要啟用整個執行個體或 Always On 可用性群組,請在 [自動保護] 下拉式清單中,選取 [開啟],然後選取 [確定]

      注意

      自動保護功能不僅可一次性地在所有現有的資料庫上啟用保護,也會自動保護新增至該執行個體或可用性群組的任何新資料庫。

  5. 定義備份原則。 您可以執行下列其中一個步驟:

    • 選取 HourlyLogBackup 的預設原則。

    • 選擇之前為 SQL 建立的現有備份原則。

    • 根據 RPO 和保留範圍來定義新的原則。

      Select Backup policy

  6. 選取 [啟用備份] 以提交設定保護作業,並在入口網站的 [通知] 區域中追蹤設定進度。

    Track configuration progress

建立備份原則

備份原則會定義備份的進行時間和備份的保留時間長度。

  • 原則會建立於保存庫層級上。
  • 多個保存庫可以使用相同的備份原則,但您必須將備份原則套用至每個保存庫。
  • 建立備份原則時,預設值是每日完整備份。
  • 您可以新增差異備份,但僅限於將完整備份設定為每週進行時。
  • 瞭解不同類型的備份原則

若要建立備份原則:

  1. 移至 [備份中心],然後按一下 [+ 原則]

  2. 選取 [Azure VM 中的 SQL Server] 做為資料來源類型,選取要在其中建立原則的保存庫,然後按一下 [繼續]

    Screenshot showing to choose a policy type for the new backup policy.

  3. 在 [原則名稱] 中,為新原則輸入名稱。

    Screenshot to showing to enter policy name.

  4. 選取對應至 [完整備份] 的 [編輯] 連結以修改預設設定。

    • 選取 [備份頻率]。 選擇 [每日] 或 [每週]
    • 若選擇 [每日],請選取備份作業的開始時間和時區。 您無法為每日完整備份建立差異備份。

    Screenshot showing new backup policy fields.

  5. 在 [保留範圍] 中,依預設會選取所有選項。 請清除任何保留範圍限制,然後設定要使用的間隔。

    • 所有備份類型 (完整、差異和記錄) 的最小保留期間為七天。
    • 復原點會根據其保留範圍標記為保留。 例如,如果您選取每日完整備份,每天只會觸發一次完整備份。
    • 系統會根據每週保留範圍和每週保留設定,標記和保留特定日期的備份。
    • 每月和每年保留範圍會以類似方式運作。

    Screenshot showing the retention range interval settings.

  6. 選取 [確定] 以接受完整備份的設定。

  7. 選取對應至 [差異備份] 的 [編輯] 連結以修改預設設定。

    • 在 [差異備份原則] 中,選取 [啟用] 以開啟頻率和保留控制項。
    • 您每天僅可以觸發一次差異備份。 差異備份無法與完整備份在同一天觸發。
    • 差異備份最多可以保留 180 天。
    • 差異備份保留期間不能長於完整備份 (因為差異備份依靠完整備份來進行復原)。
    • Master 資料庫不支援差異備份。

    Screenshot showing the differential Backup policy.

  8. 選取對應至 [記錄備份] 的 [編輯] 連結以修改預設設定

    • 在 [記錄備份] 中選取 [啟用],然後設定頻率和保留控制項。
    • 記錄備份可以每隔 15 分鐘頻繁地出現,而且最多可以保留 35 天。
    • 如果資料庫處於簡單復原模式中,該資料庫的記錄備份排程將會暫停,因此不會觸發任何記錄備份。
    • 如果資料庫的復原模式從完整變更為簡單,則會在復原模式變更後的 24 小時內暫停記錄備份。 同理如果變更了簡單的復原模式,則表示能夠支援資料庫的記錄備份,且會在復原模式變更後的 24 小時內啟用記錄備份排程。

    Screenshot showing the log Backup policy.

  9. 在 [備份原則] 功能表上,選擇是否要啟用 [SQL 備份壓縮]。 此選項預設為停用。 若已啟用,SQL Server 會將壓縮的備份串流處理至 VDI。 Azure 備份會根據此控制項的值,以 COMPRESSION / NO_COMPRESSION 子句覆寫執行個體層級預設值。

  10. 完成備份原則的編輯之後,請選取 [確定]

注意

每個記錄備份都會連結到先前的完整備份,以形成復原鏈結。 系統會保留此完整備份,直到最後一個記錄備份的保留期到期為止。 這可能表示完整備份會保留一段額外的時間,以確保可以復原所有記錄。 假設您已設定每週進行完整備份、每日進行差異備份和每 2 小時進行記錄備份。 所有這些項目都會保留 30 天。 但只有在下一次的完整備份可供使用時 (也就是 30 + 7 天之後),才能真正清除/刪除每週的完整備份。 例如,每週的完整備份會在 11 月 16 日執行。 根據保留原則,備份應該保留到 12 月 16 日為止。 此完整備份的最後一個記錄備份會在下一次排定的完整備份 (也就是 11 月 22 日) 之前進行。 直到 12 月 22 日,也就是此記錄備份到期之前,您都無法刪除 11 月 16 日的完整備份。 因此,11 月 16 日的完整備份會保留到 12 月 22 日。

執行隨選備份

  1. 在復原服務保存庫中,選擇 [備份項目]。
  2. 選取 [Azure VM 中的 SQL]。
  3. 以滑鼠右鍵按一下資料庫,然後選擇 [立即備份]。
  4. 選擇 [備份類型] (完整/差異/記錄/僅複製完整) 和 [壓縮] (啟用/停用)。
    • 「隨選完整」備份至少會保留「45 天」,最多保留「99 年」
    • 「隨選僅複製完整」備份可接受任何保留期間值。
    • 「隨選差異」備份會按照原則中所設的排程差異來保留備份。
    • 「隨選記錄」備份會按照原則中所設的排程記錄保留期來保留備份。
  5. 選取 [確定] 來開始備份。
  6. 移至復原服務保存庫並選擇 [備份作業],來監視備份作業。

下一步

在本教學課程中,您已使用 Azure 入口網站來:

  • 建立和設定保存庫。
  • 探索資料庫,並設定備份。
  • 為資料庫設定自動保護。
  • 執行隨選備份。

繼續下一個教學課程,從磁碟還原 Azure 虛擬機器。