這兩種程序都需要您自訂及執行設定檔。
以下各節將詳細說明如何將 SAP IQ 或 SAP MaxDB 資料庫的磁碟區備份映像檔復原到新位置。
如要將 IBM Db2、MariaDB、MySQL、PostgreSQL、SAP ASE、SAP IQ 或 SAP MaxDB 資料庫的磁碟區層級備份映像檔復原至新目標,您也可以使用將資料庫即時掛接並遷移至新目標程序。
如要將 IBM Db2、PostgreSQL、SAP ASE、SAP IQ 和 SAP MaxDB 資料庫的完整 + 增量備份映像檔還原至新目標,請參閱「將其他資料庫的完整 + 增量備份映像檔還原至新目標」。
復原程序
如要將磁碟區層級的備份映像檔還原到新目標,請按照下列步驟操作:
- 在備份和災難復原服務管理控制台中,開啟「應用程式管理工具」。
以滑鼠右鍵按一下受保護的資料庫,然後選取「存取」。您可以使用「受管理備份方案」狀態篩選器,只顯示受保護的資料庫。
選取要復原的最新快照,然後選擇「掛接」。
在掛接位置下方提供目標掛接點,例如
/dmpRstNew
。這會做為 TARGET_MNT_PNT 變數使用。資料庫備份會掛接在 /dmpRstNew (TARGET_MNT_PNT) 下,記錄備份則會掛接在 /dmpRstNew_archivelog (LOG_BKP_MNTPT) 下。
以根使用者身分登入資料庫伺服器。將目錄變更為
/act/custom_apps/<database type>/restore
。執行指令碼。
SAP IQ
/act/custom_apps/sybaseiq/restore/act_sybaseiq_lvm_customdb_recovery.sh TARGET_MNT OSUSER CATALOG_DB_FILE SRC_DB_DBA_USER SRC_DB_DBA_PWD LOG_BKP_MNTPT RECOVERY_TIME JOBID INCR_BKP_LOC
指令碼執行完畢後,請連線至 IQ 資料庫,並確認資料庫已復原且處於連線狀態。
dbisql -c "uid=username;pwd=password;eng=engine name;dbn=database name;" -nogui
SAP MaxDB
/act/custom_apps/maxdb/restore/ACT_MAXDB_lvmRestore_newTarget.sh \ OSUSER \ TARGET_SERVER_NAME \ TARGET_DB_USER \ TARGET_DBUSER_PASSWD \ SOURCE_DBSID \ MANIFEST_FILE_LOC \ SRC_DB_VERSION \ ACT_JOBNAME \ TARGET_MNT_PNT \ LOG_BKP_MNTPT \ UNTIL_TIME \ BEGIN_TIME
連線至 MaxDB 資料庫,並確認資料庫已復原且處於上線狀態:
dbmcli -d TARGET_SERVER_NAME -u TARGET_DB_USER,TARGET_DBUSER_PASSWD db_state
資料庫還原後,請執行資料庫傾印備份,在 backup_history_list 中產生備份記錄點,這是執行記錄備份的必要條件。例如:
dbmcli -d DB -u DBM_USER,DBM_PASSWORD -c backup_start TEMPLATE_NAME DATA AUTOIGNORE
否則,日後磁碟區層級備份作業會失敗,並顯示「fail to trigger autolog backup template」(無法觸發自動記錄備份範本) 錯誤訊息。
卸載已掛接的快照映像檔。
變更密碼
在某些情況下,您可能需要變更資料庫密碼。
SAP IQ
登入目標資料庫。如果資料庫名稱為
TARGET_SERVER_NAME
,資料庫使用者為SRC_DB_DBA_USER
,密碼為SRC_DB_DBA_PWD
,登入指令如下。dbisql -nogui -onerror exit -c 'uid=SRC_DB_DBA_USER;pwd=SRC_DB_DBA_PWD;dbn=TARGET_DB_NAME;eng=TARGET_SERVER_NAME;
執行下列指令來變更密碼。
ALTER USER SRC_DB_DBA_USER IDENTIFIED BY NEW_PASSWORD
使用新密碼再次登入,以驗證身分:
dbisql -nogui -onerror exit -c 'uid=SRC_DB_DBA_USER;pwd=NEW_PASSWORD;dbn=TARGET_DB_NAME;eng=TARGET_SERVER_NAME;
SAP MaxDB
如要變更密碼,請以 DBM 使用者身分登入目標資料庫:
dbmcli -d TARGET_SERVER_NAME -u TARGET_DB_USER,TARGET_DBUSER_PASSWD user_changepwd dbm new_password
舉例來說,如果 DBM 使用者將密碼從 abcdef 變更為 fedcba,請登入:
dbmcli -d glxn -u dbm,abcdef
執行下列指令:
user_changepwd dbm abcdef
使用新密碼重新登入:
dbmcli -d glxn -u dbm,fedcba