

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon EC2 上的 SAP HANA 備份
<a name="backup-saphana"></a>

**注意**  
[支援的 服務 AWS 區域](backup-feature-availability.md#supported-services-by-region) 包含目前支援的可用 Amazon EC2 執行個體上的 SAP HANA 資料庫備份區域。

AWS Backup 支援在 Amazon EC2 執行個體上備份和還原 SAP HANA 資料庫。

**Topics**
+ [使用 的 SAP HANA 資料庫概觀 AWS Backup](#saphanaoverview)
+ [透過 備份 SAP HANA 資料庫的先決條件 AWS Backup](#saphanaprerequisites)
+ [AWS Backup 主控台中的 SAP HANA 備份操作](#saphanabackupconsole)
+ [檢視 SAP HANA 資料庫備份](#saphanaviewbackup)
+ [AWS CLI 使用 搭配 SAP HANA 資料庫 AWS Backup](#saphanaapicli)
+ [疑難排解 SAP HANA 資料庫的備份](#saphanatroubleshooting)
+ [使用 時的 SAP HANA 術語詞彙表 AWS Backup](#saphanaglossary)
+ [AWS Backup EC2 執行個體版本備註上的 SAP HANA 資料庫支援](#saphanareleasenotes)

## 使用 的 SAP HANA 資料庫概觀 AWS Backup
<a name="saphanaoverview"></a>

除了能夠建立備份和還原資料庫之外， AWS Backup 還與適用於 SAP 的 Amazon EC2 Systems Manager 整合，以便客戶識別和標記 SAP HANA 資料庫。

AWS Backup 已與 AWS Backint Agent 整合，可執行 SAP HANA 備份和還原。如需詳細資訊，請參閱《[AWS Backint](https://docs.aws.amazon.com/sap/latest/sap-hana/aws-backint-agent-sap-hana.html)》。

當您備份 SAP HANA 時，快照和隨需備份是完整備份。不過，您可以透過啟用point-in-time復原 (PITR) 的連續備份來實現增量備份。

## 透過 備份 SAP HANA 資料庫的先決條件 AWS Backup
<a name="saphanaprerequisites"></a>

您必須先完成幾個先決條件，才能執行備份和還原活動。請注意，您將需要 SAP HANA 資料庫的管理存取權和許可，才能在 AWS 帳戶中建立新的 IAM 角色和政策，以執行這些步驟。

請完成 [Amazon EC2 Systems Manager 的這些先決條件](https://docs.aws.amazon.com/ssm-sap/latest/userguide/get-started.html)。

1. [為執行 SAP HANA 資料庫的 Amazon EC2 執行個體設定必要許可](https://docs.aws.amazon.com/ssm-sap/latest/userguide/get-started.html#ec2-permissions)

1. [ 在 中註冊登入資料 AWS Secrets Manager](https://docs.aws.amazon.com/ssm-sap/latest/userguide/get-started.html#register-secrets)

1. [ 安裝 AWS Backint 和 AWS Systems Manager for SAP Agents](https://docs.aws.amazon.com/sap/latest/sap-hana/aws-backint-agent-installing-configuring.html)

1. [ 驗證 SSM Agent](https://docs.aws.amazon.com/ssm-sap/latest/userguide/get-started.html#verify-ssm-agent)

1. [ 驗證參數](https://docs.aws.amazon.com/ssm-sap/latest/userguide/get-started.html#verification)

1. [ 註冊 SAP HANA 資料庫](https://docs.aws.amazon.com/ssm-sap/latest/userguide/get-started.html#register-database)

最佳實務是只註冊每個 HANA 執行個體一次。多個註冊可能會導致相同資料庫ARNs。維護單一 ARN 和註冊可簡化備份計劃的建立和維護，也有助於減少備份的意外重複。

## AWS Backup 主控台中的 SAP HANA 備份操作
<a name="saphanabackupconsole"></a>

完成先決條件並設定適用於 SAP 的 SSM 之後，您就可以備份和還原 EC2 上的 SAP HANA 資料庫。

### 選擇加入以保護 SAP HANA 資源
<a name="saphanaenableoptin"></a>

若要使用 AWS Backup 來保護 SAP HANA 資料庫，必須將 SAP HANA 切換為其中一個受保護的資源。若要選擇加入：

1. 在 https：//[https://console.aws.amazon.com/backup](https://console.aws.amazon.com/backup) 開啟 AWS Backup 主控台。

1. 在左側的導覽窗格中，選擇**設定**。

1. 在 **選擇加入服務** 下，選取 **設定資源**。

1. 選擇加入 **Amazon EC2 上的 SAP HANA**。

1. 按一下 **確認**。

現在將會為 Amazon EC2 上的 SAP HANA 啟用「選擇加入服務」。

### 建立 SAP HANA 資料庫的排程備份
<a name="saphanascheduledbackup"></a>

您可以[編輯現有的備份計畫](https://docs.aws.amazon.com/aws-backup/latest/devguide/updating-a-backup-plan.html)並將 SAP HANA 資源新增至其中，也可以只為 SAP HANA 資源[建立新的備份計畫](https://docs.aws.amazon.com/aws-backup/latest/devguide/creating-a-backup-plan.html)。

如果您選擇建立新的備份計畫，您將有三個選項：

1. **選項 1：從範本開始**

   1. 選擇備份計畫範本。

   1. 指定備份計畫名稱。

   1. 按一下 **建立計畫**。

1. **選項 2：建立新的計畫**

   1. 指定備份計畫名稱。

   1. 選擇性地指定要新增至備份計畫的標籤。

   1. 指定備份規則組態。

      1. 指定備份規則名稱。

      1. 選取現有的保存庫或建立新的備份保存庫。這是備份的儲存位置。

      1. 指定備份頻率。

      1. 指定備份時段。

         請注意，目前不支援轉換至冷儲存**。

      1. 指定保留期。

         目前不支援複製到目的地**

      1. (選擇性)** 指定要新增至復原點的標籤。

   1. 按一下 **建立計畫**。

1. **選項 3：使用 JSON 定義計畫**

   1. 您可以透過修改現有備份計畫的 JSON 運算式或建立新的運算式，來指定用於備份計畫的 JSON。

   1. 指定備份計畫名稱。

   1. 按一下 **驗證 JSON**。

   成功建立備份計畫之後，您可以在下一個步驟中將資源指派給備份計畫。

無論您使用哪種計畫，都請務必[指派資源](https://docs.aws.amazon.com/aws-backup/latest/devguide/assigning-resources.html)。您可以選擇要指派的 SAP HANA 資料庫，包括系統和租戶資料庫。您也可以選擇排除特定資源 ID。

### 建立 SAP HANA 資料庫的隨需備份
<a name="saphanaondemandbackup"></a>

您可以[建立完整的隨需備份](https://docs.aws.amazon.com/aws-backup/latest/devguide/recov-point-create-on-demand-backup.html)，在建立後立即執行。請注意，Amazon EC2 執行個體上 SAP HANA 資料庫的隨需備份是完整備份；不支援增量備份。

現在建立您的隨需備份。一開始會備份您指定的資源。主控台會將您轉移至 **備份任務** 頁面，您可以在其中檢視任務進度。請記下畫面頂端藍色橫幅中的備份任務 ID，因為您將需要此 ID 才能輕鬆找到備份任務的狀態。備份完成後，其狀態會變成 `Completed`。備份最多可能需要數小時。

重新整理**備份任務清單**以查看狀態變更。您也可以搜尋並按一下 **備份任務 ID** 來檢視詳細的任務狀態。

### SAP HANA 資料庫的連續備份
<a name="saphanacontinuousbackup"></a>

您可以進行[連續備份](https://docs.aws.amazon.com/aws-backup/latest/devguide/point-in-time-recovery.html)，這可搭配時間點還原 (PITR) 使用 (請注意，隨需備份會將資源保持在進行備份時所處的狀態，而 PITR 則使用連續備份來記錄一段時間內的變更)。

使用連續備份，您可以在 1 秒的精確度內倒回您選擇的特定時間來還原 EC2 執行個體上的 SAP HANA 資料庫 (最多可回到 35 天前)。連續備份的運作方式是先建立資源的完整備份，然後持續備份資源的交易日誌。PITR 還原的運作方式是存取您的完整備份，並將交易日誌重播到您告知 AWS Backup 復原的時間。

當您 AWS Backup 使用 AWS Backup 主控台或 API 在 中建立備份計劃時，可以選擇加入連續備份。

**使用主控台啟用連續備份**

1. 登入 AWS 管理主控台，並在 https：//[https://console.aws.amazon.com/backup](https://console.aws.amazon.com/backup) 開啟 AWS Backup 主控台。

1. 在導覽窗格中，選擇 **備份計畫**，然後選擇 **建立備份計畫**。

1. 在 **備份規則** 下，選擇 **新增備份規則**。

1. 在 **備份規則組態** 區段中，選取 **為支援的資源啟用連續備份**。

停用 SAP HANA 資料庫備份的 [PITR (時間點還原)](https://docs.aws.amazon.com/aws-backup/latest/devguide/point-in-time-recovery.html) 之後，系統會繼續將日誌傳送至 AWS Backup ，直到復原點到期為止 (狀態等於 `EXPIRED)`)。您可以在 SAP HANA 中變更為替代日誌備份位置，以停止將日誌傳輸至 AWS Backup。

狀態為 的連續復原點`STOPPED`表示連續復原點已中斷；也就是說，從 SAP HANA 傳輸至 AWS Backup 的日誌會顯示資料庫的增量變更有間隙。在此時間範圍內發生的復原點都會具有 `STOPPED.` 狀態。

如需在連續備份 (復原點) 的還原任務期間可能遇到的問題，請參閱本指南的《[SAP HANA 還原故障診斷](https://docs.aws.amazon.com/aws-backup/latest/devguide/saphana-restore.html#saphanarestoretroubleshooting)》一節。

## 檢視 SAP HANA 資料庫備份
<a name="saphanaviewbackup"></a>

**檢視備份和還原任務的狀態：**

1. 在 https：//[https://console.aws.amazon.com/backup](https://console.aws.amazon.com/backup) 開啟 AWS Backup 主控台。

1. 在導覽窗格中，選擇 **Jobs (任務)**。

1. 選擇備份任務、還原任務或複製任務，以查看您的任務清單。

1. 搜尋並按一下您的任務 ID 來檢視詳細的任務狀態。

**檢視保存庫中的所有復原點：**

1. 在 https：//[https://console.aws.amazon.com/backup](https://console.aws.amazon.com/backup) 開啟 AWS Backup 主控台。

1. 在導覽窗格中，選擇 **Backup vaults (備份文件庫)**。

1. 搜尋並按一下備份保存庫來檢視保存庫中的所有復原點。

**檢視受保護資源的詳細資訊：**

1. 在 https：//[https://console.aws.amazon.com/backup](https://console.aws.amazon.com/backup) 開啟 AWS Backup 主控台。

1. 在導覽窗格中，選擇 **Protected resources (受保護的資源)**。

1. 您也可以依資源類型進行篩選，以檢視該資源類型的所有備份。

## AWS CLI 使用 搭配 SAP HANA 資料庫 AWS Backup
<a name="saphanaapicli"></a>

Backup 主控台中的每個動作都有對應的 API 呼叫。

若要以程式設計方式設定和管理 AWS Backup 及其資源，請使用 API 呼叫[https://docs.aws.amazon.com/aws-backup/latest/devguide/API_StartBackupJob.html](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_StartBackupJob.html)來備份 EC2 執行個體上的 SAP HANA 資料庫。

使用 `start-backup-job` 作為 CLI 命令。

## 疑難排解 SAP HANA 資料庫的備份
<a name="saphanatroubleshooting"></a>

如果您在工作流程期間遇到錯誤，請參閱下列範例錯誤和建議的解決方法：

**Python 先決條件**
+ **錯誤：自 SSM for SAP 以來與 Python 版本相關的 Zypper 錯誤**，且 AWS Backup 需要 Python 3.6，但預設 SUSE 12 SP5 支援 Python 3.4。

  **解決方案：**執行下列步驟，在 SUSE12 SP5 上安裝多個版本的 Python：

  1. 執行 update-alternatives 命令，在 '/usr/local/bin/' 中建立 Python 3 的符號連結，而不是直接使用 '/usr/bin/python3'。此命令會將 Python 3.4 設定為預設版本。命令為： `# sudo update-alternatives —install /usr/local/bin/python3 python3 /usr/bin/python3.4 5`

  1. 執行下列命令，將 Python 3.6 新增至替代組態： `# sudo update-alternatives —install /usr/local/bin/python3 python3 /usr/bin/python3.6 2`

  1. 執行下列命令，將替代組態變更為 Python 3.6： `# sudo update-alternatives —config python3`

     應顯示下列輸出：

     ```
     There are 2 choices for the alternative python3 (providing /usr/local/bin/python3).
      Selection Path Priority Status
     * 0 /usr/bin/python3.4 5 auto mode
      1 /usr/bin/python3.4 5 manual mode
      2 /usr/bin/python3.6 2 manual mode
     Press enter to keep the current choice[*], or type selection number:
     ```

  1. 輸入對應至 Python 3.6 的數字。

  1. 檢查 Python 版本並確認正在使用 Python 3.6。

  1. (*選用，但建議使用*) 驗證 Zypper 命令是否如預期般運作。

**Amazon EC2 Systems Manager for SAP 探索和註冊**
+ **錯誤：SSM for SAP 因封鎖存取 和 SSM 的公有端點，而無法探索工作負載**。 AWS Secrets Manager 

  **解決方案：**測試是否可從 SAP HANA 資料庫存取端點。如果無法連線，您可以為 AWS Secrets Manager 建立 Amazon VPC 端點，並為 SAP 建立 SSM。

  1. 透過執行下列命令，測試從 Amazon EC2 主機存取 HANA 資料庫的 Secrets Manager：`aws secretsmanager get-secret-value —secret-id hanaeccsbx_hbx_database_awsbkp`。如果命令無法傳回值，防火牆會封鎖對 Secrets Manager 服務端點的存取。日誌會在「從 Secrets Manager 擷取秘密」的步驟停止。

  1. 執行命令 來測試 SSM for SAP `aws ssm-sap list-registration` 端點的連線能力。如果命令無法傳回值，防火牆會封鎖對 SSM for SAP 端點的存取。

     錯誤範例：`Connection was closed before we received a valid response from endpoint URL: “https://ssm-sap.us-west-2.amazonaws.com/register-application"`。

  如果無法連線端點，有兩個選項可以繼續。
  + 開啟防火牆連接埠，以允許存取 Secrets Manager 的公有服務端點和 SAP 的 SSM；或
  + 建立 Secrets Manager 的 VPC 端點和 SAP 的 SSM，然後：
    + 確定 DNSSupport 和 DNSHostname 已啟用 Amazon VPC。
    + 確保您的 VPC 端點已啟用允許私有 DNS 名稱。
    + 如果 SSM for SAP 探索成功完成，日誌將顯示主機已探索。
+ **Error： AWS Backup 和 Backint 連線由於封鎖存取 AWS Backup 服務公有端點而失敗。** `aws-backint-agent.log` 可能會顯示類似如下的錯誤： `time="2024-01-03T11:39:15-08:00" level=error msg="Storage configuration validation failed: missing backup data plane Id"`或 `level=fatal msg="Error performing backup missing backup data plane Id`。此外， AWS Backup 主控台可以顯示 `Fatal Error: An internal error occured.`

  **解決方案：**開啟防火牆連接埠以允許存取公有服務端點 (HTTPS)。使用此選項後，DNS 將透過公有 IP 地址解析對 AWS 服務的請求。
+ **錯誤：SSM for SAP 註冊失敗，因為 HANA 密碼包含特殊字元。**範例錯誤可能包括使用 `hdbsql` 和 測試連線`Discovery failed because credentials for HBX/SYSTEMDB either not provided or cannot be validated.`後`tenantdb`，`systemdb`從 HANA 資料庫 Amazon EC2 執行個體進行測試的 `Error connecting to database HBX/HBX when validating its credentials.`或 。

  在 任務 頁面上的 AWS Backup主控台中，備份任務詳細資訊可以顯示 的狀態`FAILED`，並顯示錯誤 `Miscellaneous: b’* 10: authentication failed SQLSTATE: 28000\n’`。

  **解決方案：**確保您的密碼沒有特殊字元，例如 \$1。
+ **錯誤： `b’* 447: backup could not be completed: [110507] Backint exited with exit code 1 instead of 0. console output: time...`**

  **解決方案：**SAP HANA 的 AWS BackInt 代理程式安裝可能尚未成功完成。重試程序，以在 SAP 應用程式伺服器上部署 [AWS Backint Agent](https://docs.aws.amazon.com/sap/latest/sap-hana/aws-backint-agent-sap-hana.html) 和 [Amazon EC2 Systems Manager Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html)。
+ **錯誤： 主控台在註冊後不符合日誌檔案。**

  探索日誌會顯示嘗試連線至 HANA 資料庫時失敗的註冊，因為密碼包含特殊字元，但 SSM for SAP Application Manager for SAP 主控台會顯示註冊成功。 不會確認註冊成功。如果主控台顯示成功註冊，但日誌未成功，則備份將會失敗。

  **確認註冊狀態：**

  1. 登入 [SSM 主控台](https://console.aws.amazon.com//systems-manager)

  1. 從左側導覽選取**執行命令**。

  1. 在文字欄位**命令歷史記錄**下，輸入 `Instance ID:Equal:`，其值等於您用於註冊的執行個體。這將篩選命令歷史記錄。

  1. 使用命令 ID 欄來尋找狀態為 的命令`Failed`。然後，尋找 **AWSSystemsManagerSAP-Discovery** 的文件名稱。

  1. 在 中 AWS CLI，執行命令 `aws ssm-sap register-application status`。如果傳回的值顯示 `Error`，表示註冊失敗。

  **解決方案：**確保您的 HANA 密碼沒有特殊字元 （例如 "\$1")。

**建立 SAP HANA 資料庫的備份**
+ **錯誤：建立 SystemDB 或 TenantDB 的隨需備份時 AWS Backup ，主控台會顯示「嚴重錯誤」訊息。**這是因為無法存取公有端點。這是因為用戶端防火牆會封鎖對此端點的存取。

  `aws-backint-agent.log` 可以顯示錯誤，例如 `level=error msg="Storage configuration validation failed: missing backup data plane Id"`或 `level=fatal msg="Error performing backup missing backup data plane Id."`

  **解決方案：**開放防火牆存取公有端點 。
+ **錯誤：**`Database cannot be backed up while it is stopped`。

  **解決方法：**確定要備份的資料庫處於作用中狀態。只有當資料庫在線上時，才能備份資料庫資料和日誌。
+ **錯誤： ** `Getting backup metadata failed. Check the SSM document execution for more details.`

  **解決方法：**確定要備份的資料庫處於作用中狀態。只有當資料庫在線上時，才能備份資料庫資料和日誌。

**監控備份日誌**
+ **錯誤： ** `Encountered an issue with log backups, please check SAP HANA for details.`

  **解決方案：**檢查 SAP HANA，以確保日誌備份 AWS Backup 從 SAP HANA 傳送至 。
+ **錯誤： ** `One or more log backup attempts failed for recovery point.`

  **解決方法：**請檢查 SAP HANA 了解詳情。確保日誌備份 AWS Backup 是從 SAP HANA 傳送至 。
+ **錯誤： ** `Unable to determine the status of log backups for recovery point.`

  **解決方法：**請檢查 SAP HANA 了解詳情。確保日誌備份 AWS Backup 是從 SAP HANA 傳送至 。
+ **錯誤：**`Log backups for recovery point %s were interrupted due to a restore operation on the database.`

  **解決方法：**等待還原任務完成。日誌備份應該會繼續進行。

## 使用 時的 SAP HANA 術語詞彙表 AWS Backup
<a name="saphanaglossary"></a>

**資料備份類型：**SAP HANA 支援兩種類型的資料備份：完整和 INC （增量）。 AWS Backup 最佳化每個備份操作期間使用的類型。

**目錄備份：**SAP HANA 會維護自己的資訊清單，稱為 *catalog*. AWS Backup interacts 與此目錄互動。每個新備份都會在目錄中建立一個項目。

**連續日誌備份 (交易日誌)**：SAP HANA 會追蹤自最近一次備份以來的所有交易，以便執行時間點復原 (PITR) 功能。

**系統複製：**一種還原任務，其中還原目標資料庫與建立復原點的來源資料庫不同。

**破壞性還原：**破壞性還原是一種還原任務類型，還原的資料庫會在此期間刪除或覆寫來源或現有資料庫。

**完整：**完整備份是完整資料庫的備份。

**INC：**增量備份是自上次備份以來對 SAP HANA 資料庫所做之所有變更的備份。

## AWS Backup EC2 執行個體版本備註上的 SAP HANA 資料庫支援
<a name="saphanareleasenotes"></a>

目前不支援特定功能：
+ 連續備份 （使用交易日誌） 無法複製到其他區域或帳戶。快照備份可以從完整備份複製到支援的區域和帳戶。
+ 目前不支援 Backup Audit Manager 和報告。
+ [支援的 服務 AWS 區域](backup-feature-availability.md#supported-services-by-region) 包含 Amazon EC2 執行個體上目前支援的 SAP HANA 資料庫備份區域。