The following sections include information on recovering IBM Db2, SAP ASE, SAP IQ, and SAP MaxDB databases from a Full+Incremental backup image to a new target.
Procedure
To restore a file-based backup image to a new target, follow these instructions:
-
From the App Manager Applicationslist, right-click the protected database and select Access.
-
Select the latest snapshot to recover and click Mount.
-
Provide a mount point under mount location, for example:
/mymountpoint.The database backup is mounted under
/mymountpointand the log backup is mounted under/mymountpoint_archivelog. -
Retrieve the
JobIDof the mount from/var/act/log/UDSAgent.logby running the following command:grep "mount -t " / var / act / log / UDSAgent . log | grep - w "(mountPoint provided in step 3)" | tail - 1For example:
# 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_MNTis equal to _archivelog. Refer to step three. -
Login to the database server as root. On the server, change the directory to the following:
cd / act / custom_apps / ( database type ) / dump -
Run the script from command line as root.
-
Unmount the mounted dump snapshot image.
Required script
Before you can mount a database to a new target, you must prepare a script.
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
Replace the following:
SOURCE_INSTANCE
: the name of the Db2 instance TARGET_MNT
: the mount point provided during the mount job DB_LIST
: a comma-separated list of databases to restore ARCHIVELOG_MNT
: archive log backup mount point name SOURCE_LOGARCHMETH1
: Db2 source database archivelog location, must be local disk UNTIL_TIME
: recovery time in the format: YYYY-MM-DD-HH.MI.SS ACT_JOBNAME
: the jobname of the standard mount jobConnect to the Db2 instance and confirm that the databases are recovered and online.
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
Connect to the SAP ASE instance and confirm that the databases are recovered and online.
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
Connect to the IQ database and confirm databases are recovered and online.
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
You can get these values by running the following commands:
-
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}'
Connect to the MaxDB instance and confirm that the databases are recovered and online:
dbmcli
-d
<TARGET_SERVER_NAME>
-u
<TARGET_DB_USER>,<TARGET_DBUSER_PASSWD>
db_state

