在 Azure VM 上備份 SAP Hana 系統複寫資料庫

SAP HANA 資料庫是需要低復原點目標 (RPO) 和長期保留的重要工作負載。 本文說明如何使用 Azure 備份,將 Azure 虛擬機 (VM) 上執行的 SAP Hana 資料庫備份至 Azure 備份復原服務保存庫。

您也可以將 Azure 備份上的 SAP Hana 資料庫 (獨立) 保護切換為 HSR。 深入了解

注意

  • 目前沒有 HSR + DR 案例的支援,因為有 VM 和保存庫必須在相同區域的限制。
  • 若要深入了解支援的設定和案例,請參閱 SAP Hana 備份支援矩陣

必要條件

  • 在與 Hana 系統複寫 (HSR) 資料庫的兩個 VM/節點相同的區域和訂用帳戶中,識別/建立復原服務保存庫。
  • 允許從每個 VM/節點連線到網際網路,以便與 Azure 進行通訊。
  • 在屬於 Hana 系統復寫 (HSR) 的 VM 或節點上執行預先註冊指令碼。 您可以從這裡下載最新的預先註冊指令碼。 也可以從 [復原服務保存庫]>[備份]>[在 VM 中探索 DB]>[開始探索] 底下的連結下載。

重要

確定 Azure Resource Manager VM 的 SAP Hana 伺服器 VM 名稱和資源群組名稱的合併長度未超過 84 個字元 (傳統 VM 的限制為 77 個字元)。 之所以有此限制,是因為服務會保留某些字元。

建立復原服務保存庫

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

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

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

執行預先註冊指令碼

發生容錯移轉時,使用者會複寫到新的主要複本,但不會複寫 hdbuserstore。 因此,您必須在 HSR 設定的所有節點中建立相同金鑰,讓 Azure 備份服務自動連線到任何新的主要節點,而不需任何手動介入。

  1. 在 HANA 系統中建立具有下列角色和權限的自訂備份使用者:

    角色 權限 描述
    MDC 資料庫管理員和備份管理員 (Hana 2.0 SPS05 和更高版本) 在還原期間建立新的資料庫。
    SDC 備份管理員 讀取備份目錄。
    SAP_INTERNAL_HANA_SUPPORT 存取一些私人資料表。

    只有比 Hana 2.0 SPS04 Rev 46 還舊的單一容器資料庫 (SDC) 和多容器資料庫 (MDC) 版本才需要。 Hana 2.0 SPS04 Rev 46 和更高版本不需要此項目,因為我們現在會透過 Hana 小組的修正來取得公用資料表中的必要資訊。
  2. 為自訂備份使用者將金鑰新增至 hdbuserstore,供 Hana 備份外掛程式管理所有作業 (資料庫查詢、還原作業、設定和執行備份)。

  3. 將自訂備份使用者金鑰以參數形式傳遞至指令碼:

    -bk CUSTOM_BACKUP_KEY_NAME` or `-backup-key CUSTOM_BACKUP_KEY_NAME
    

    如果此自訂備份金鑰的密碼過期,備份和還原作業將會失敗。

    範例:

    hdbuserstore set SYSTEMKEY localhost:30013@SYSTEMDB <custom-user> '<some-password>'
    hdbuserstore set SYSTEMKEY <load balancer host/ip>:30013@SYSTEMDB <custom-user> '<some-password>'
    

    注意

    您可以使用負載平衡器主機/IP 來建立自訂備份金鑰,而不是使用本機主機來使用虛擬 IP (VIP)。

    圖表顯示使用本機主機/IP 建立自訂備份金鑰。

    Disgram explains the flow to pass the custom backup user key to the script as a parameter.

    圖表顯示使用虛擬 IP 建立自訂備份金鑰 (Load Balancer 前端 IP/主機)。

    Disgram explains the flow to create the custom backup key using Virtual IP.

  4. 在兩個 VM/節點上,建立相同的「自訂備份使用者」(使用相同的密碼) 和金鑰 (在 hdbuserstore 中)。

  5. 提供唯一的 HSR 識別碼做為指令碼的輸入:

    -hn HSR_UNIQUE_VALUE--hsr-unique-value HSR_Unique_Value

    您必須在 VM/節點上提供相同的 HSR 識別碼。 此識別碼在保存庫內必須是唯一的。 其應該是英數位元值,其中包含至少一個數字、一個小寫字母和一個大寫字元,而且應該包含 6 到 35 個字元。

  6. 當您在次要節點上執行預先註冊指令碼時,必須在輸入中指定 SDC/MDC 連接埠。 這是因為用來識別 SDC/MDC 安裝程式的 SQL 命令無法在次要節點上執行。 您必須提供連接埠號碼做為參數,如此處所示:

    -p PORT_NUMBER–port_number PORT_NUMBER

    • 針對 MDC,請使用 3<instancenumber>13 格式。
    • 針對 SDC,請使用 3<instancenumber>15 格式。
  7. 如果您的 Hana 安裝程式使用私人端點,請使用 -sn--skip-network-checks 參數來執行預先註冊指令碼。 成功執行預先註冊前令碼之後,請繼續進行後續步驟。

  8. 以根使用者的身分,在安裝 Hana 的 VM 中執行 SAP Hana 備份設定指令碼 (預先註冊指令碼)。 此指令碼會為 HANA 系統做好備份的準備。 如需指令碼動作的詳細資訊,請參閱預先註冊指令碼的用途一節。

    HSR 設定沒有 Hana 產生的唯一識別碼。 因此,您需要提供唯一的識別碼,以協助備份服務將 HSR 的所有節點分組為單一資料來源。

若要設定用於備份的資料庫,請參閱必要條件先註冊指令碼的用途區段。

探索資料庫

若要探索 HSR 資料庫,請遵循下列步驟:

  1. 在 Azure 入口網站中,前往 [備份中心],並選取 [+ 備份]

    Screenshot that shows how to start database discovery.

  2. 選取 [Azure VM 中的 SAP Hana] 做為資料來源類型,選取要用於備份的復原服務保存庫,然後選取 [繼續]

    Screenshot that shows how to configure a database backup.

  3. 選取 [開始探索] 以開始在保存庫區域中探索未受保護的Linux VM。

    • 進行探索之後,未受保護的 VM 會出現在入口網站中,並依照名稱和資源群組列出。
    • 如果 VM 未如預期列出,請檢查該 VM 是否已備份在保存庫中。
    • 多個 VM 可以有相同名稱,但其必須屬於不同的資源群組。

    Screenshot that shows how to discover a HANA database.

  4. 在 [選取虛擬機器] 窗格底部,選取 [在 SAP Hana VM 上執行此處的指令碼來將這些權限提供給 Azure 備份服務] 中的此處連結。

    Screenshot that highlights the link for downloading the script.

  5. 在每個裝載 SAP Hana 資料庫以進行備份的 VM 上執行指令碼。

  6. 在 [選取虛擬機器] 窗格上,當您在 VM 上執行指令碼之後,選取 VM,然後選取 [探索 DB]

    Azure 備份會探索 VM 上的所有 SAP HANA 資料庫。 在探索期間,Azure 備份會向保存庫註冊 VM,並在 VM 上安裝延伸模組。 它不會在資料庫上安裝任何代理程式。

    若要檢視每個所探索 VM 的所有資料庫詳細資料,請在 [步驟 1:在 VM 中探索 DB] 區段底下,選取 [檢視詳細資料]

注意

在次要節點上探索或設定備份期間,如果 [備份整備狀態] 顯示為 「未就緒」,請忽略該狀態,因為這是 HSR 上次要節點的預期狀態。

Screenshot shows the different backup readiness state.

設定備份

若要啟用備份,請遵循下列步驟:

  1. 在 [備份目標] 窗格的 [步驟 2] 中,選取 [設定備份]

    Screenshot that shows the 'Configure Backup' button.

  2. 在 [選取要備份的項目] 窗格上,選取您要保護的所有資料庫,然後選取 [確定]

    Screenshot that shows a list of virtual machines available to be backed up.

  3. 在 [備份原則] 下拉式清單中,選取您想要使用的原則,然後選取 [新增]

    Screenshot that shows how to select and add a backup policy.

  4. 建立原則之後,請在 [備份] 窗格上,選取 [啟用備份]

    Screenshot that shows the 'Enable backup' button for backing up the database.

  5. 若要追蹤備份設定進度,請移至 Azure 入口網站中的 [通知]

注意

在 [設定系統資料庫備份] 階段中,您必須在主要節點上設定此參數 [inifile_checker]/replicate。 這可讓您將參數從主要節點複寫到次要節點或 VM。

建立備份原則

備份原則定義備份排程和備份保留持續時間。

注意

  • 原則會建立於保存庫層級上。
  • 多個保存庫可以使用相同的備份原則,但您必須將備份原則套用至每個保存庫。
  • 當您備份在 Azure VM 中執行的 SAP Hana 資料庫時,Azure 備份不會配合日光節約時間的變更自動調整。 請視需要手動修改原則。

若要設定原則設定,請遵循下列步驟:

  1. 在 [備份原則] 窗格的 [原則名稱] 方塊中,輸入新原則的名稱。

    Screenshot that shows the 'Backup policy' pane for entering a policy name.

  2. 在 [完整備份] 底下的 [備份頻率] 中,選取 [每日] 或 [每週]

    • 每日:選取備份作業開始時間和時區。

      • 您必須執行完整備份。 您無法關閉此選項。
      • 選取 [完整備份] 以檢視原則。
      • 您無法為每日完整備份建立差異備份。
    • 每週:選取備份作業的執行日期 (星期幾)、時間和時區。

    Screenshot that shows how to configure the backup frequency.

  3. 在 [完整備份原則] 窗格的 [保留範圍] 底下,設定完整備份的保留設定。

    • 依預設會選取所有選項。 請清除您不想要使用的任何保留範圍限制,並視需要設定限制。
    • 所有備份類型 (完整/差異/記錄) 的最小保留期間為 7 天。
    • 復原點會根據其保留範圍標記為保留。 例如,如果您選取每日完整備份,每天只會觸發一次完整備份。
    • 系統會根據每週保留範圍和設定,標記和保留特定日期的備份資料。
  4. 選取 [確定] 以儲存原則設定。

  5. 選取 [差異備份] 以新增差異原則。

  6. 在 [差異備份原則] 中,選取 [啟用] 以開啟頻率和保留控制項。

    • 您每天最多可以觸發一次差異備份。
    • 您可以保留差異備份最多 180 天。 如果您需要保留更久,則必須使用完整備份。

    Screenshot that shows how to configure a differential backup policy for a database.

    注意

    您可以選擇差異或增量備份做為特定時間的每日備份。

  7. 在 [增量備份原則] 窗格中,選取 [啟用] 以開啟頻率和保留控制項。

    • 您每天最多可以觸發一次增量備份。
    • 您可以保留增量備份最多 180 天。 如果您需要保留更久,則必須使用完整備份。

    Screenshot that shows how to enable an incremental backup policy.

  8. 選取 [確定] 以儲存原則,然後返回主要 [備份原則] 功能表。

  9. 選取 [記錄備份],以新增交易記錄備份原則。

    • 在 [記錄備份] 中,選取 [啟用]

      您無法停用此選項,因為 SAP Hana 會管理所有記錄備份。

    • 設定頻率和保留控制。

    注意

    只有在順利完成完整備份後,才會開始串流記錄備份。

  10. 選取 [確定] 以儲存原則,然後返回主要 [備份原則] 功能表。

  11. 備份原則設定完成後,選取 [確定]

    所有記錄備份都會鏈結到先前的完整備份,以形成復原鏈結。 完整備份會保留到上次記錄備份到期為止。 因此,完整備份會保留一段額外的時間,以確保可以復原所有記錄。

    例如,假設您有每週的完整備份、每日差異和 2 小時的記錄。 所有這些項目都會保留 30 天。 但只有在下一次的完整備份可供使用時 (也就是 30 + 7 天之後),才能刪除每週的完整備份。

    如果每週完整備份發生在 11 月 16 日,則根據保留原則,應該保留到 12 月 16 日為止。 此完整備份的最後一個記錄備份會在下一次排定的完整備份之前進行,也就是 11 月 22 日。 在 12 月 22 日提供此記錄之前,不會刪除 11 月 16 日的完整備份。 因此,11 月 16 日完整備份會保留到 12 月 22 日為止。

執行隨選備份

備份會根據原則排程執行。 了解如何執行隨選備份

注意

在進行計劃性容錯移轉之前,請確定兩個 VM/節點都已註冊至保存庫 (實體和邏輯註冊)。 深入了解

在已啟用 Azure 備份的資料庫上執行 SAP Hana 原生用戶端備份

您可以使用 SAP Hana 原生用戶端對本機文件系統執行隨選備份,而不是 Backint。 深入了解如何使用 SAP 原生用戶端來管理作業

保護 Azure 備份上 HSR 節點的案例

您現在可以將 Azure 備份上的 SAP Hana 資料庫 (獨立) 保護切換為 HSR。 如果您已設定 HSR 並只使用 Azure 備份保護主要節點,您可以修改設定來保護主要和次要節點。

兩個獨立/HSR 節點永遠不會使用 Azure VM 上的 SAP Hana 資料庫備份來保護

  1. (強制性) 在主要和次要 VM 節點上執行最新的預先註冊指令碼

    注意

    HSR 型屬性會新增至最新的預先註冊指令碼。

  2. 手動設定 HSR 或使用任何叢集工具,例如 Pacemaker

    如果 HSR 設定已完成,請跳至下一個步驟。

  3. 探索並設定這些 VM 的備份。

    注意

    針對 HSR 部署,受保護的執行個體費用會算在 HSR 邏輯容器中 (兩個節點 - 主要和次要節點),這將形成單一 HSR 邏輯容器。

  4. 在進行計劃性容錯移轉之前,請確定兩個 VM/節點都已註冊至保存庫 (實體和邏輯註冊)

兩個獨立 VM/一個已使用 Azure VM 上的 SAP Hana 資料庫備份保護的獨立 VM

  1. 若要停止備份並保留資料,請移至 [保存庫]>[備份項目]>[Azure VM 中的 SAP Hana],然後選取 [檢視詳細資料]>[停止備份]>[保留備份資料]>[停止備份]

  2. (強制性) 在主要和次要 VM 節點上執行最新的預先註冊指令碼

    注意

    HSR 型屬性會新增至最新的預先註冊指令碼。

  3. 手動或使用 Pacemaker 之類的任何叢集工具來設定 HSR。

  4. 探索 VM,並在 HSR 邏輯執行個體上設定備份。

    注意

    針對 HSR 部署,受保護的執行個體費用會算在 HSR 邏輯容器中 (兩個節點 - 主要和次要節點),這將形成單一 HSR 邏輯容器。

  5. 在進行計劃性容錯移轉之前,請確定兩個 VM/節點都已註冊至保存庫 (實體和邏輯註冊)

下一步