以降のセクションでは、フル バックアップ イメージと増分バックアップ イメージから IBM Db2、SAP ASE、SAP IQ、SAP MaxDB データベースを新しいターゲットに復元する方法について説明します。
手順
ファイルベースのバックアップ イメージを新しいターゲットに復元する手順は次のとおりです。
[App Manager Applications] リストで、保護されたデータベースを右クリックして [Access] を選択します。
復元する最新のスナップショットを選択し、[マウント] をクリックします。
マウント ポイントをマウント ロケーションの下に指定します(例:
/mymountpoint
)。データベース バックアップは
/mymountpoint
にマウントされ、ログ バックアップは/mymountpoint_archivelog
にマウントされます。次のコマンドを実行して、
/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
ARCHIVELOG_MNT
は _archivelog に等しい。ステップ 3 を参照してください。root としてデータベース サーバーにログインします。サーバーで、ディレクトリを次のように変更します。
cd /act/custom_apps/(database type)/dump
コマンドラインからルートとしてスクリプトを実行します。
マウントされたダンプ スナップショット イメージをマウント解除します。
必要なスクリプト
データベースを新しいターゲットにマウントする前に、スクリプトを準備する必要があります。
IBM Db2
/act/custom_apps/db2/dump/ACT_DB2_dumprestore_newTarget.sh \
SOURCE_INSTANCE=SOURCE_INSTANCE_edited_value \
TARGET_MNT=TARGET_MNT_edited_value \
DB_LIST=DB_LIS_edited_value \
ARCHIVELOG_MNT=ARCHIVELOG_MNT_edited_value \
SOURCE_LOGARCHMETH1=SOURCE_LOGARCHMETH1_edited_value \
UNTIL_TIME=UNTIL_TIME_edited_value \
ACT_JOBNAME=ACT_JOBNAME_edited_value
次のように置き換えます。
SOURCE_INSTANCE
: Db2 インスタンスの名前TARGET_MNT
: マウント ジョブ中に指定されたマウント ポイントDB_LIST
: 復元するデータベースのカンマ区切りリストARCHIVELOG_MNT
: アーカイブ ログ バックアップのマウント ポイント名SOURCE_LOGARCHMETH1
: Db2 ソース データベースのアーカイブログのロケーション(ローカルディスクである必要があります)UNTIL_TIME
: 復元時間(YYYY-MM-DD-HH.MI.SS 形式)。ACT_JOBNAME
: 標準マウント ジョブのジョブ名Db2 インスタンスに接続し、データベースが復元されてオンラインになっていることを確認します。
db2 connect to <dbname>
db2 select db_status FROM SYSIBMADM.SNAPDB
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