どちらの手順でも、構成ファイルをカスタマイズして実行する必要があります。
以降のセクションでは、SAP IQ データベースまたは SAP MaxDB データベースのボリュームベースのバックアップ イメージを新しい場所に復元する方法について説明します。
IBM Db2、MariaDB、MySQL、PostgreSQL、SAP ASE、SAP IQ、SAP MaxDB データベースのボリュームレベルのバックアップ イメージを新しいターゲットに復元するには、データベースの即時マウントと新しいターゲットへの移行の手順を使用することもできます。
IBM Db2、PostgreSQL、SAP ASE、SAP IQ、SAP MaxDB データベースのフル バックアップ イメージと増分バックアップ イメージを新しいターゲットに復元するには、他のデータベースのフル バックアップ イメージと増分バックアップ イメージを新しいターゲットに復元するをご覧ください。
復元手順
ボリュームレベルのバックアップ イメージを新しいターゲットに復元する手順は次のとおりです。
[App Manager Applications] リストで、保護されたデータベースを右クリックして [Access] を選択します。[マネージド バックアップ プラン] のステータス フィルタを使用すると、保護されたデータベースのみを表示できます。
復元する最新のスナップショットを選択して、[マウント] を選択します。
マウント ポイントの下にターゲット マウント ポイントを指定します(例:
/dmpRstNew
)。これは、変数 TARGET_MNT_PNT として使用されます。データベース バックアップは /dmpRstNew(TARGET_MNT_PNT)にマウントされ、ログ バックアップは /dmpRstNew_archivelog(LOG_BKP_MNTPT)にマウントされます。
root としてデータベース サーバーにログインします。ディレクトリを
/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
これを行うと、今後のボリュームレベルのバックアップは失敗し、autolog バックアップ テンプレートのトリガーに失敗しましたというエラーが発生します。
マウントされたスナップショット イメージをマウント解除します。
パスワードを変更する
場合によっては、データベースのパスワードを変更する必要があります。
SAP IQ
ターゲット データベースにログインします。
TARGET_SERVER_NAME
という名前のデータベースで、db ユーザーが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