從永久磁碟備份掛載及復原 SAP HANA 單租戶資料庫

如要從以永久磁碟為基礎的 SAP HANA 資料庫備份中還原及復原單一租戶,請按照下列步驟操作。

掛載備份

使用管理控制台將備份掛載至目標伺服器:

  1. 停止執行中的 HANA 例項 (僅適用於復原至來源)。
  2. 登入管理控制台,前往「應用程式」頁面。
  3. 選取資料庫,然後選取「存取」
  4. 選取要復原的備份,然後按一下「掛載」
  5. 在「Mount」(掛載) 頁面上,選取目標「Project name」(專案名稱)、「Region」(地區)、「Zone」(區域) 和目標「GCE instance name」(GCE 執行個體名稱)
  6. 更新資料磁碟區記錄磁碟區記錄備份磁碟區的掛載位置。(為確保預先檢查作業成功,請指定所有未使用的掛載位置)。
  7. 停用「Snapshot integrity check」選項。
  8. 執行預檢。如果失敗,請修正錯誤並再次執行,然後提交工作。
  9. 掛載工作完成後,您可以在目標主機上看到掛載點。
  10. 如果您已還原至來源,請重新啟動執行個體。

復原已掛載的單一租戶資料庫

使用到的變數範例:

  • 來源 DBSID:DM2
  • 目標 DBSID:NVM (必須在目標主機上預先設定)。
  • 資料磁碟區:/hana/data_2
  • 記錄資料量:/hana/log_2
  • 記錄備份磁碟區:/hanabackup_2、/hana/backup_2_533788010
  • 來源租用戶:DM2 (資料檔案位置:mnt00001/hdb00002.00003、mnt00001/hdb00003.00003)
  • 目標租戶:NVM

程序

  1. 以超級使用者身分登入目標主機,然後變更檔案的擁有權:

    chown -R nvmadm:sapsys /hanabackup_2 /hana/backup_2_533788010
    
  2. 確認資訊清單檔案是在掛載作業的一部分中建立:

    cd /act/touch
    cat dm2_HANA.manifest
    

    輸出內容範例如下: SYSTEMDB=mnt00001/hdb00001 DM2=mnt00001/hdb00002.00003:mnt00001/hdb00003.00003

  3. 確認目標伺服器上是否有與資訊清單檔案中顯示的租用戶資料庫相關的必要目錄:

    ls -ltr /hana/data/NVM/mnt00001/hdb00002.00003/
    total 103252
    -rw-r--r-- 1 nvmadm sapsys         0 Jun 13 20:11 __DO_NOT_TOUCH_FILES_IN_THIS_DIRECTORY__
    -rw-r--r-- 1 nvmadm sapsys 269811712 Jun 14 19:26 datavolume_0000.dat
    
    ls -ltr /hana/data/NVM/mnt00001/hdb00003.00003/
    total 3801248
    -rw-r--r-- 1 nvmadm sapsys          0 Jun 13 20:11 __DO_NOT_TOUCH_FILES_IN_THIS_DIRECTORY__
    -rw-r--r-- 1 nvmadm sapsys 3892314112 Jun 14 19:29 datavolume_0000.dat
    
  4. 在目標伺服器上停止租用戶資料庫:

    hdbsql -U ACTBACKUP
    hdbsql SYSTEMDB=> alter system stop database NVM;
    
  5. 將檔案從已掛接的掛接點複製到目標伺服器掛接點:

    cp /hana/data_2/DM2/mnt00001/hdb00002.00003/* /hana/data/NVM/mnt00001/hdb00002.00003/
    cp /hana/data_2/DM2/mnt00001/hdb00003.00003/* /hana/data/NVM/mnt00001/hdb00003.00003/
    
  6. 請確認已變更複製檔案的權限:

    chown -R nvmadm:sapsys /hana/data/NVM/mnt00001/hdb00002.00003
    chown -R nvmadm:sapsys /hana/data/NVM/mnt00001/hdb00003.00003
    
  7. 確認是否已啟動 SYSTEMDB。

  8. 使用時間點復原功能還原租用戶資料庫。

    • 如果已掛載的資料庫含有多個記錄掛載點,請傳遞以半形逗號分隔的掛載點記錄路徑:
    hdbsql -jAU ACTBACKUP
    
    RECOVER DATABASE FOR NVM UNTIL TIMESTAMP '2024-06-14 17:16:00'  CLEAR LOG USING CATALOG PATH  ('/hana/backup_2_533788010/log/DB_DM2') USING DATA PATH ('/hana/data/NVM')  USING LOG PATH ('/hanabackup_2/log/DB_DM2','/hana/backup_2_533788010/log/DB_DM2') USING SNAPSHOT CHECK ACCESS USING FILE;
    
    • 如果您只想從資料庫映像檔復原,請使用下列指令:
    hdbsql -jAU ACTBACKUP
    RECOVER DATA FOR $TSID USING SNAPSHOT CLEAR LOG
    
  9. 租用戶資料庫復原後,請檢查資料庫狀態:

    hdbsql -jAU ACTBACKUP
    
    hdbsql SYSTEMDB=> select * from m_databases;
    | DATABASE | DESCRIPTION     | ACT | ACTIVE | OS_USER  | OS_GROUP | RESTART | F |
    | -------- | --------------- | --- | ------ | -------- | -------- | ------- | - |
    | SYSTEMDB | SystemDB-NVM-00 | YES | ACTIVE |          |          | DEFAULT | ? |
    | NVM      | NVM-00          | YES | ACTIVE |          |          | DEFAULT | ? |
    
  10. 執行卸載並刪除 (移除備份磁碟 /hana/data_2 等)。