アプライアンス管理コンソールで他のデータベースとインスタンスをソースに復元する

Backup and DR の復元オペレーションでは、バックアップ イメージがソースに復元され、そこに存在するデータが上書きされます。

システムの制限事項と回避策

  • 論理ボリューム マネージャー(LVM)スナップショットとしてバックアップされたルート パーティション上のシステム データベースは、ルート パーティションをマウント解除できないため、復元オペレーションで使用できません。これらには、標準マウントから同じホストへの手動復元と復旧が必要です。
    ユーザーのダウンタイムを短縮してボリューム レベルのデータベース イメージを復元するには、他のタイプのデータベースをマウントして移行し、即時復元するをご覧ください。

  • 複数のインスタンスが同じボリュームまたはファイル システムを共有している場合、ソースへの復元はサポートされていません。このようなアプリケーションを復元するには、イメージをホストにマウントし、ボリュームベースのバックアップ イメージからソースに単一のデータベースを復元するで説明されている手順で単一のデータベースの復元を行います。

  • バックアップ対象のプロダクション ボリュームの下にネストされたマウント ポイントがある場合、プロダクション ボリュームがビジー状態でマウント解除できないため、ソースへの復元と移行のオペレーションが失敗します。

  • 復元するには /backup-disaster-recovery/docs/restore-data/otherdb-restore

ボリューム レベルのバックアップ イメージからソースにデータベースを復元する

この手順では、ソースデータ領域の物理的な復元を使用します。ソースに復元する手順は次のとおりです。

  1. [App Manager Applications] リストで、保護されたデータベースを右クリックして [Access] を選択します。[マネージド バックアップ プラン] ステータス フィルタを使用して、保護されたデータベースのみを表示します。

  2. スナップショット イメージを選択し、[復元] をクリックします。

  3. [従来] を選択します(マウントと移行ではありません)。

  4. ソース アプリケーションが、データベース ログのバックアップを有効にしたスナップショット ポリシーによって保護されており、イメージでログが利用可能な場合は、[Roll Forward Time] セクションで次のオプションを変更することで、それらのログを使用して特定の時点にロール フォワードできます。

    • 日付フィールドには、データベース トランザクション ログの適用によってデータベースをロールフォワードできるすべての日付が含まれます。データベースをロールフォワードする日付を選択します。
    • 時間フィールドには、データベースをロールフォワードできる、選択した日付のすべての可能な時間を示すスライダーが含まれています。可能な限り最新の日付を選択し、スライダーを右端に移動すると、復元ジョブは利用可能なすべてのログに適用されます。可能な限り早い日付を選択し、スライダーを左端に移動すると、復元ジョブはログを適用しません。
    • User Time(ユーザー時間)または Host Time(ホスト時間)を使用して、ロール フォワードを指定できます。ユーザー時間は、現在のユーザーの現地時間を基準にしています。ホスト時間は、復元されるデータをホストするシステムが基準になります。
  5. [Restore With Recovery] を有効にして、復元されたログを適用します。

  6. [送信] をクリックします。

  ```sh
    ALTER DBSPACE IQ_SYSTEM_LOG RENAME /pitr_log_location
    SET OPTION PUBLIC.IQ_POINT_IN_TIME_RECOVERY_LOGGING = 'ON'
  ```

ボリュームベースのバックアップ イメージからソースに単一のデータベースを復元する

単一の Db2 または SAP ASE バックアップ イメージをソースに復元する手順は次のとおりです。

  1. [App Manager Applications] リストで、保護されたデータベースを右クリックして [Access] を選択します。

  2. 復元する最新のスナップショットを選択して、[マウント] をクリックします。

  3. [Application Options] で、[Create New Virtual Application] を無効にします。

  4. [Mapping Options] で、マウント ポイントの場所を指定します。

    たとえば、/mymount を使用すると、この場所にデータベース バックアップがマウントされます。ログのバックアップは /mymount_archivelog にマウントされます。

  5. [送信] をクリックします。

  6. [監視] > [ジョブ] ページで、マウントジョブが完了したことを確認します。

  7. ジョブが完了したら、root としてデータベース サーバーにログインします。サーバーで、ディレクトリを /act/custom_apps/<var>database type</var>/restore に変更します。

  8. /var/act/log/UDSAgent.log からマウントの JobID を取得します。JobID を確認するには、次のコマンドを実行します。

    grep "mount -t " /var/act/log/UDSAgent.log | grep -w "<var>mountpoint from step 4</var>"|tail -1
    

    次に例を示します。

    grep "mount -t " /var/act/log/UDSAgent.log | grep -w "/db2mnt" |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 /db2mnt 2>&1
    
  9. ARCHIVELOG_MNT は <var>mountpoint provided in step 4</var>_archivelog です。

  10. ターゲット ホストのコマンドラインから root としてスクリプトを実行します。

IBM Db2

スクリプト: act_db2_lvm_customdb_recovery.sh

スクリプトの引数:

SOURCE_INSTANCE = <var>Db2  Instance name</var>
DB_NAME=<var>Db2 Database name to be recovered(Single)</var>
TARGET_MNT = <var>Db2 Database image mountpoint name</var>
ARCHIVELOG_MNT= <var>Archive Log backup mount point name</var>
UNTIL_TIME = <var>Recovery Time(Format: "YYYY-MM-DD-HH.MI.SS")</var>
JOBID = <var>Database mount Job name</var>

Db2 インスタンスに接続し、データベースが復元済みかつオンラインであることを確認します。

db2 connect to <var>dbname</var>
db2 select db_status FROM SYSIBMADM.SNAPDB

SAP ASE

これらの引数を指定して、スクリプト act_sybase_lvm_customdb_recovery.sh を実行します。

./act_sybase_lvm_customdb_recovery.sh OSUSER=sybase
TARGET_SYBASE_SQLD=/home/sybase/Sybase16Home/OCS-16_0 TARGET_MNT_PNT=/sngRst
TARGET_SERVER_NAME=ASE1 TARGET_DB_USER=sa STRIPEON=4 TARGET_DBUSER_PASSWD=sybase
SRC_DBNAME=CU1 LOG_BKP_MNTPT=/sngRst_archivelog UNTIL_TIME="2019-11-07 20:31:27"
BEGIN_TIME="2019-11-07 19:31:27" JOBID="Job_2677627"

スクリプトの引数

OSUSER = SAP Ase OS owner name
TARGET_SYBASE_SQLD = SAP ASE iSQL path on the target recovery host
TARGET_MNT_PNT = SAP ASE Instance image mountpoint name
TARGET_SERVER_NAME = SAP ASE data server name on the target recovery host
TARGET_DB_USER = SAP ASE Instance username on the target recovery host
TARGET_DBUSER_PASSWD = SAP ASE Instance user password on the target recovery host
SRC_DBNAME = SAP ASE Database name to be recovered (Single)
LOG_BKP_MNTPT = SAP ASE Log image mountpoint name
BEGIN_TIME= Backup begin time (Format: "YYYY-MM-DD HH24:MI:SS")
UNTIL_TIME = Point in time to recover the database (Format: "YYYY-MM-DD HH24:MI:SS")
JOBID = Database mount Job name

SAP ASE データベースに接続して、データを確認します。

  1. アプライアンス管理コンソールで、イメージに再度アクセスし、データベース マウント ポイントをマウント解除して削除します。

ファイルベースの完全バックアップおよび増分バックアップのイメージをソースに復元する

この手順では、ソースデータが上書きされます。ファイルベースのバックアップ イメージからソース データベースを復元する手順は次のとおりです。

  1. [App Manager Applications] リストで、保護されたデータベースを右クリックして [Access] を選択します。

  2. スナップショット イメージを選択し、[復元] をクリックします。

  3. [従来] を選択します(マウントと移行ではありません)。

  4. [Select Items] を使用して、復元するデータベースを 1 つ以上選択します。

  5. [Restore With Recovery] を有効にして、復元されたすべてのログを適用します。

  6. [送信] をクリックします。これにより、データベースの復元 API を使用してソース データベースの物理的な復元が開始されます。

  ALTER DBSPACE IQ_SYSTEM_LOG RENAME '/<var>pitr_log_location</var>'
  SET OPTION PUBLIC.IQ_POINT_IN_TIME_RECOVERY_LOGGING = 'ON'