在設備管理控制台中,將其他 SAP 資料庫的完整備份 + 增量備份還原至新目標

以下章節包含從完整 + 增量備份還原 SAP ASE、SAP IQ 和 SAP MaxDB 資料庫至新目標的相關資訊。

程序

如要將檔案備份還原至新目標,請按照下列操作說明執行:

  1. 在「App Manager Applications」清單中,對受保護的資料庫按一下滑鼠右鍵,然後選取「Access」

  2. 選取要復原的最新快照,然後按一下「掛接」

  3. 在掛接位置下方提供掛接點,例如:/mymountpoint

    資料庫備份會掛接在 /mymountpoint 下方,而記錄備份會掛接在 /mymountpoint_archivelog 下方。

  4. 執行下列指令,從 /var/act/log/UDSAgent.log 擷取掛接的 JobID

    grep "mount -t " /var/act/log/UDSAgent.log | grep -w "(mountPoint provided in step 3)"|tail -1
    

    例如:

    # grep "mount -t " /var/act/log/UDSAgent.log| grep -w "/db2mnp" |tail -1
    2019-11-18 23:59:19.740 GEN-INFO 22488 Job_0404207 Spawning cmd: mount -t ext4 /dev/act403764_DBDump_1574101677612/act_staging_vol /db2mnp 2>&1
    
  5. ARCHIVELOG_MNT 等於 _archivelog。請參閱步驟三。

  6. 以根使用者身分登入資料庫伺服器。在伺服器上,將目錄變更為下列位置:

    cd /act/custom_apps/(database type)/dump
    
  7. 以根使用者身分透過指令列執行指令碼。

  8. 卸載已掛接的傾印備份。

必要指令碼

將資料庫掛接到新目標前,請先準備指令碼。

SAP ASE

  /act/custom_apps/sybase/dump/ACT_SYBASE_dumprestore_newTarget.sh
  SYBOSUSER
  SRC_SYBASE_SQLD
  TARGET_DB_USER
  TARGET_DBUSER_PASSWD
  ACT_NAME
  TARGET_MNT_PNT
  SRC_DBNAME
  UNTIL_TIME
  BEGIN_TIME
  LOG_BKP_MNTPT
  SRC_PAGE_SIZE

連線至 SAP ASE 執行個體,並確認資料庫已復原且處於上線狀態。

    isql -U<username> -P<password> -S<SAP ASE server name>
    sp_helpdb
    go

SAP IQ

  /act/custom_apps/sybase/dump/ACT_SYBASE_dumprestore_newTarget.sh
  OSUSER
  TARGET_MNT
  SRC_DB_DBA_USER
  SRC_DB_DBA_PWD
  SYBIQ_HOME
  VERSION
  ACT_NAME
  CATALOG_DB_FILE
  LOG_BKP_MNTPT

連線至 IQ 資料庫,並確認資料庫已復原且處於連線狀態。

    dbisql -c "uid=<username>;pwd=<password>;eng=<engine name>;dbn=<database name>;" -nogui

SAP MaxDB

  /act/custom_apps/maxdb/dump/ACT_Maxdb_dumpRestore_newTarget.conf
  OSUSER
  SRC_DBSID
  TARGET_DB_USER
  TARGET_DBUSER_PASSWD
  TARGET_SERVER_NAME
  DUMPBKPLOC
  DBADMIN_PWD
  UNTIL_TIME
  LOG_MNT_PNT
  DATA_MNT_PNT
  JobID
  MANIFEST_FILE_LOC
  LOG_BKP_MNTPT
  BEGIN_TIME
  SRC_DB_VERSION

執行下列指令即可取得這些值:

  • DUMPBKPLOC:

    df -h | grep <DUMPBKPLOC> | awk '{print $NF}'
    cat /var/act/log/UDSAgent.log | grep -w <DUMPBKPLOC> | tail -1 | cut -d']' -f2 | cut -d' ' -f2
    
  • JobID:

    cat /var/act/log/UDSAgent.log | grep <JOBID> | awk -F"disk at " '{print $2}'
    
  • MANIFEST_FILE_LOC:

    cat /var/act/log/UDSAgent.log | grep -i "Manifest_File_" | awk -F"disk at " '{print $2}'
    
  • LOG_BKP_MNTPT:

    df -h | grep "_archivelog" | awk '{print $NF}'
    
  • BEGIN_TIME:

    cat /var/act/log/UDSAgent.log | grep "BEGIN_TIME" | awk -F"BEGIN_TIME=" '{ print $2 }' | cut -d' ' -f1-2 | cut -d'"' -f2
    
  • SRC_DB_VERSION:

    dbmcli -d <SRC_DBSID> dbm_version | grep "VERSION" | awk -F"= " '{print $2}'
    

連線至 MaxDB 執行個體,並確認資料庫已復原且處於上線狀態:

    dbmcli -d <TARGET_SERVER_NAME> -u
    <TARGET_DB_USER>,<TARGET_DBUSER_PASSWD>
    db_state