21.3.3 例題3(RDエリア単位に回復する場合)
ユーザ用RDエリア(rdarea01,rdarea02)を障害発生直前の最新の同期点に回復します。システムログファイルの運用方法は,システムログをアンロードする運用をしています。
なお,処理対象のRDエリアだけではなく,関連のあるRDエリアについても同時に回復する必要があります。回復対象となるRDエリアについては,「同時にバックアップを取得する必要があるRDエリア」を参照してください。
- 〈この項の構成〉
(1) 回復対象のRDエリアに関連のあるRDエリアを確認します
この操作は,ユーザ用RDエリア,及びユーザLOB用RDエリア(インナレプリカ機能を使用している場合は,ユーザ用RDエリアのオリジナルRDエリア,及びユーザLOB用RDエリアのオリジナルRDエリア)に対してだけ実行します。また,横分割表を定義している場合は,pdrdreflsコマンドの-tオプションを実行し,横分割表を構成するRDエリアを確認します。
回復対象のRDエリアが不足している場合は,追加します。
pdrdrefls -k chk -e org -c ref -r rdarea01,rdarea02
(2) 障害閉塞しているRDエリアをpdcloseコマンドでクローズします
pdclose -r rdarea01,rdarea02
(3) pdloglsコマンドで現用のシステムログファイルを調べます
HiRDB/パラレルサーバの場合は,rdarea01及びrdarea02があるバックエンドサーバのシステムログファイルを調べてください。
pdlogls -d sys
(4) pdlogswapコマンドでシステムログファイルをスワップします
現用ファイルの内容をアンロードするため,システムログファイルをスワップします。HiRDB/パラレルサーバの場合は,rdarea01及びrdarea02があるバックエンドサーバのシステムログファイルをスワップしてください。
pdlogswap -d sys -w
(5) 現用だったファイルの内容をpdlogunldコマンドでアンロードします
(3)で調べた現用ファイルの内容をアンロードしてください。HiRDB/パラレルサーバの場合は,rdarea01及びrdarea02があるバックエンドサーバの現用ファイルの内容をアンロードしてください。
pdlogunld -d sys -g log01 -o /unld/unldlog02
- ●自動ログアンロード機能を使用している場合
-
この操作は必要ありません。pdlogatulコマンドで自動ログアンロード機能が動作していることを確認してください。また,pdloglsコマンドでアンロード処理が終了したかどうかを確認してください。
(6) pdrstrコマンドでRDエリアを最新の同期点に回復します
pdrstr -m /rdarea/mast/mast01 -b /pdcopy/backup01 -l /unld/unldlog01,/unld/unldlog02 -w /tmp/sortwork -r rdarea01,rdarea02
- 〔説明〕
-
-m:マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。
-b:rdarea01及びrdarea02のバックアップが格納されているバックアップファイルの名称を指定します。
-l:アンロードログファイルの名称を指定します。
-w:ソート用ワークディレクトリの名称を指定します。
-r:回復するRDエリア(rdarea01,rdarea02)の名称を指定します。
-
範囲指定の回復をする場合は,−Tオプションに回復終了時刻を指定してください。−Tオプションを指定しないと,障害発生直前の最新の同期点にRDエリアを回復します。
-
システムログファイル又はアンロードログファイルの障害によって入力できないアンロードログファイルがある場合,そのサーバのRDエリアは,障害が発生した箇所までしか回復できません(それ以外のサーバのRDエリアには影響ありません)。必要に応じて,次の方法で障害が発生した箇所を特定し,トランザクションを再度実行してください。
-
障害発生時にKFPR16203-Eメッセージに出力された,アンロードログファイル名を確認します。
-
手順1で確認したアンロードログファイルに対してpdlogucatコマンドを実行し,ファイルが作成されたサーバ名と日時(作成開始時刻)を確認します。
-
手順2で確認したサーバで,作成開始時刻以降に実行されたトランザクションを再度実行します。
-
(7) pdcopyコマンドで回復したRDエリアのバックアップを取得します
pdcopy -m /rdarea/mast/mast01 -M x -r rdarea01,rdarea02 -b /pdcopy/backup02 -z /pdcopy/logpoint01 -p /pdcopy/list01
- 〔説明〕
-
-m:マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。
-M:バックアップ取得モードに参照・更新不可能モードを指定します。
-r:障害が発生したRDエリア(rdarea01,rdarea02)のバックアップを取得します。
-b:バックアップファイル名を指定します。
-z:ログポイント情報ファイル名を指定します。自動ログアンロード機能を使用している場合に指定することをお勧めします。
-p:pdcopyコマンドの実行結果リストの出力ファイル名を指定します。
バックアップの取得については,「バックアップの取得方法」を参照してください。
(8) 回復したRDエリアの障害閉塞をpdrelsコマンドで解除してオープンします
pdrels -r rdarea01,rdarea02 -o