ページの先頭行へ戻る
PRIMEFLEX for HA Database 利用ガイド
FUJITSU Integrated System

D.6.2 外部バックアップを用いたリカバリー

外部バックアップを用いたリカバリーは、以下の手順で実施します。
以下の準備を実施することで、指定した時刻にリカバリーが一度だけ実行されます。


  1. アプリケーションの停止や、利用者へ停止をアナウンスします。

  2. 被災などでPRIMEFLEX for HA Databaseのサーバおよびストレージが破壊されてしまった場合には、以下の操作を実施します。

    1. 3.6.4 ハードウェア部品交換”に従い、ハードウェアの部品交換を行います。この際、“交換した装置の起動”では、“データベースを復旧せずにデータベースインターフェースの初期化を行う場合”の方法を実施してください。

    2. データベースインターフェース、データベースの文字コード、ポート番号については、初期化前と同一の値を指定してください。

    3. Native SQLインターフェースの場合、[手動バックアップ]ボタンによりバックアップを実施します。

  3. Appliance Managerにエラーメッセージが出力されている場合は、“3.4 警告・異常時の対処とリカバリー”に従い対処します。

  4. Open SQLインターフェース使用時で、格納データの暗号化を設定している場合は、以下の作業を実施します。
    なお、本作業ではサーバユニットに管理用のユーザーIDでログインする必要があります。サーバユニットへログイン方法については、“付録G サーバへのログイン方法”を参照してください。ただし、接続時のユーザーIDはrootではなく、管理用のユーザーIDを指定してください。

    1. キーストアをリストアします。
      両方のサーバユニット(ServerUnit#1およびServerUnit#2)に管理用のユーザーIDでログインし、バックアップ済のキーストアをscpコマンド、sftpコマンドなどを利用して、リストアします。本作業は、両方のサーバユニットに対して行ってください。

      scp  -p 鍵管理サーバ用ID@鍵管理サーバのIPアドレス:/work/keystore_20131201.ks(注) /var/pg_keystore/location/keystore.ks

      注) リストアするバックアップデータに対応したキーストアをリストアする必要があります。対応関係については“D.8.3 バックアップ”を参照してください。

    2. ファイルの所有者の変更とキーストアの自動オープンの有効化を実施します。
      pgx_keystoreコマンドを実行し、キーストアの自動オープンを有効にしてください。本作業は、両方のサーバユニットに対して行ってください。

      # chown 管理用ユーザーID /var/pg_keystore/location/keystore.ks
      # pgx_keystore --enable-auto-open /var/pg_keystore/location/keystore.ks
      パスフレーズを入力してください:
      キーストアの自動オープンが有効になりました
      
  5. バックアップ製品にリストアジョブを登録します。
    バックアップ製品には、リストアジョブという機能があり、外部バックアップからPRIMEFLEX for HA Databaseのストレージにリストアを実行できます。また、リストア実行後に実行するコマンドを登録することにより、前回PRIMEFLEX for HA Databaseのバックアップが完了した時点までデータベースを復旧できます。リストアジョブは、ServerUnit#1とServerUnit#2のそれぞれに登録します。リストアジョブでは、以下の設定を行います。

    1. リストアジョブのスケジュールを登録
      リストアジョブは一度だけ実行されるように設定します。また、ServerUnit#1のリストアジョブと、ServerUnit#2のリストアジョブが同時刻に開始するように設定します。

    2. リストア対象のディレクトリを登録
      それぞれのリストアジョブがリストアするディレクトリとして、以下のディレクトリを登録します。

      表D.2 リストアジョブの一覧

      データベース
      インター
      フェース

      リストアジョブ

      リストア元
      (外部バックアップ媒体上)

      リストア先

      Open SQL

      ServerUnit#1のジョブ

      共通のバックアップ先

      ServerUnit#1上の以下2つ。
      ・/disk1/pg/archived_xlog/
      ・/disk2/pg/

      ServerUnit#2のジョブ

      ServerUnit#2上の以下2つ。
      ・/disk1/pg/archived_xlog/
      ・/disk2/pg/

      Native SQL

      ServerUnit#1のジョブ

      ServerUnit#1用のバックアップ先

      ServerUnit#1上の以下2つ。
      ・/disk2/rdb/backup/
      ・/disk4/rdb/cntl_back/

      ServerUnit#2のジョブ

      ServerUnit#2用のバックアップ先

      ServerUnit#2上の以下2つ。
      ・/disk2/rdb/backup/
      ・/disk4/rdb/cntl_back/

    3. リストア実行前とリストア実行後に実行するコマンドを登録
      以下のコマンドをバックアップ製品からアクセスできるディレクトリにコピーし、リストアジョブに登録します。

      状況

      コマンド名

      リストア実行前に実行するコマンド

      /opt/FJSVaplamdb/bin/apl_prerestore_to_StorageUnit.sh

      リストア実行後に実行するコマンド(注)

      /opt/FJSVaplamdb/bin/apl_postrestore_to_StorageUnit.sh

      注) バックアップ製品ごとにカスタマイズすることを推奨します。

      バックアップ製品でエラーが発生したにAppliance Managerにメッセージを表示する場合

      「リストア実行後に実行するコマンド」をカスタマイズすることで、リストア中にバックアップ製品でエラーが発生した場合に、Appliance Managerのメッセージウィンドウに「外部バックアップからのリストアが失敗しました。」のメッセージを出力させることができます。
      この場合、以下の条件を満たすコマンドを作成し、バックアップ製品からアクセスできるディレクトリに置いて実行権を付けた後、リストアジョブに登録します。

      リストア実行後に実行するコマンドの例(NetVault Backup使用時)を以下に示します。

      #!/bin/bash
      
      if [ "${NV_STATUS}" = "FAILED" ] ; then
            /opt/FJSVaplamdb/bin/apl_postrestore_to_StorageUnit.sh 1    …(1)
            exit $?
      else
            /opt/FJSVaplamdb/bin/apl_postrestore_to_StorageUnit.sh 0    …(2)
            exit $?
      fi
      

      (1)、(2)で、/opt/FJSVaplamdb/bin/apl_postrestore_to_StorageUnit.shに渡す引数は、以下のとおりです。

      状況

      引数

      外部バックアップからのリストアに成功した場合

      0

      外部バックアップからのリストアに失敗した場合

      1

      参考

      リストア実行前に実行するコマンドが失敗した場合の動作や、リストアに失敗した場合にリストア実行後に実行するコマンドが実行されるかどうかは、バックアップ製品によって異なります。以下の条件を満たすように、バックアップ製品で設定を行ってください。

      注)バックアップ製品によっては、リストアジョブを中止した場合、リストア実行後に実行するコマンドが自動では実行されません。

      そのときは、リストアジョブを中止したServerUnitにおいて、手動で以下のコマンドを実行してください。

      /opt/FJSVaplamdb/bin/apl_postrestore_to_StorageUnit.sh 1


外部バックアップを用いたリカバリー運用時の注意

外部バックアップを用いたリカバリー運用時の注意事項について説明します。