3.7.3 レプリカRDエリアの差分バックアップの取得と回復
ここでは,次の図に示すように,レプリカRDエリアの差分バックアップを取得し続け,その差分バックアップを使って障害回復を実現する方法について説明します。差分バックアップの取得は,バックアップ取得処理時間を短縮できるため,データベースの規模が大きいが更新したデータ量が少ない場合に適用できます。差分バックアップの取得方法や前提については,マニュアル「HiRDB システム運用ガイド」を参照してください。ここでは,差分バックアップの取得コマンドの実行例だけを示します。
以降,前述の図に示す(1)から(3)の手順について説明します。
- 〈この項の構成〉
(1) レプリカRDエリアの差分バックアップの取得
レプリカRDエリアの差分バックアップを取得するには,まずは通常のバックアップを取得します。そのあと,差分バックアップを取得できます。手順は,次のとおりです。
-
レプリカRDエリアのバックアップ(フルバックアップ)の取得
-
レプリカRDエリアの差分バックアップの取得
以降,各操作の手順について説明します。
(a) レプリカRDエリアのバックアップ(フルバックアップ)の取得
次に示す手順でレプリカRDエリアのバックアップを取得します。
-
レプリカRDエリアの閉塞かつクローズ
-
オリジナルRDエリアの静止化(バックアップ閉塞化)
-
ペアボリュームの分離
-
オリジナルRDエリアの閉塞解除
-
レプリカRDエリアのバックアップ(フルバックアップ)の取得
-
ペアボリュームの生成
これは,手順2,手順4のオリジナルRDエリアの更新業務の停止と再開,手順5のレプリカRDエリアのバックアップ(フルバックアップ)の取得以外は,「レプリカRDエリアのバックアップの取得」と同じ操作をします。操作内容については,「レプリカRDエリアのバックアップの取得」を参照してください。ここでは,手順7のレプリカRDエリアのバックアップの取得操作について説明します。
- レプリカRDエリアのバックアップ(フルバックアップ)の取得
-
レプリカRDエリアの差分バックアップを取得する前は,いったん,通常のバックアップ(フルバックアップ)を取得しておく必要があります。このとき,pdcopyコマンドは,通常のオプション指定だけではなく,-gオプション,-Kオプション,-dオプションも指定して実行します。-dオプションにaを指定することで,フルバックアップの取得になります。次に,pdcopyコマンドの実行例を示します。
- pdcopyコマンドの実行例
pdcopy -m /hirdb/rdarea/rdmast/rdmast01 -b /bkdir/dfbk01 -r RD01 -q 1 -g 'GRP01(S)' -K /control/dfmgr -d a
-gオプションには差分バックアップグループ名として任意の名称を指定します。最初のフルバックアップ取得時には,必ず差分バックアップグループ名に’(S)’を指定します。次回以降の差分バックアップ取得時には,ここで指定した差分バックアップグループ名を指定します。差分バックアップグループとは,差分バックアップ機能を適用するRDエリア群(RDエリアのグループ)のことを指します。-Kオプションには,差分バックアップ管理ファイルを格納するHiRDBファイルシステム領域名を指定します。差分バックアップファイル管理ファイルには,差分バックアップを取得したときの管理情報が格納されます。この領域は,差分バックアップを取得する運用を開始する前に用意しておく必要があります。取得前の前提については,マニュアル「HiRDB システム運用ガイド」を参照してください。
バックアップの取得方法については,マニュアル「HiRDB システム運用ガイド」を参照してください。
(b) レプリカRDエリアの差分バックアップの取得
レプリカRDエリアのバックアップ取得後は,差分のバックアップが取得できるようになります。差分のバックアップは,次の手順で取得します。
-
オリジナルRDエリアの静止化(バックアップ閉塞化)
-
ペアボリュームの分離
-
オリジナルRDエリアの閉塞解除
-
レプリカRDエリアの差分バックアップの取得
-
ペアボリュームの生成
ここでは,レプリカRDエリアの差分バックアップの取得操作について説明します。
- レプリカRDエリアの差分バックアップの取得
-
ここでは,レプリカRDエリアのバックアップとして,「レプリカRDエリアのバックアップ(フルバックアップ)の取得」以後からの差分だけを取得します。pdcopyコマンドでバックアップを取得しますが,そのとき,通常のオプションに加えて,-gオプション,-Kオプションおよび-dオプションも指定します。-dオプションにdを指定することで,差分バックアップの取得になります。-gオプション,-Kオプションには,「レプリカRDエリアのバックアップ(フルバックアップ)の取得」で指定した値を指定します。-gオプションに,フルバックアップを取得したときに指定した差分バックアップグループ名を指定することによって,ここでは,自動的にレプリカRDエリアの差分バックアップが取得されます。次に,差分バックアップの取得をするpdcopyコマンドの実行例を示します。
- pdcopyコマンドの実行例
pdcopy -m /hirdb/rdarea/rdmast/rdmast01 -b /bkdir/dfbk02 -g GRP01 -K /control/dfmgr -d d
(2) レプリカRDエリアの差分バックアップを使った回復
差分バックアップを取得する運用を開始してから,オリジナルRDエリアで障害が発生した場合,取得してある差分バックアップを使って障害を回復します。次の手順で回復します。
-
オリジナルRDエリアのクローズ
-
オリジナルRDエリアのハードディスクの取り替え
-
ログのアンロード
-
オリジナルRDエリアの回復
以降,各操作の手順について説明します。
(a) オリジナルRDエリアのクローズ
ここでは,障害によって,オリジナルRDエリアのハードディスクが破壊されたと考え,新しいハードディスクに取り替えて対応することにします。そのため,取り替え前には,オリジナルRDエリアをクローズしておく必要があります。レプリカRDエリアは,「レプリカRDエリアのバックアップ(フルバックアップ)の取得」の手順1で設定した閉塞かつクローズ状態のままであるとします。RDエリアのクローズには,pdcloseコマンドを使用します。このとき,-qオプションにオリジナルRDエリアの世代番号0を指定します。次に,pdcloseコマンドの実行例を示します。
- pdcloseコマンドの実行例
pdclose -r RD01 -q 0
(b) オリジナルRDエリアのハードディスクの取り替え
ハードディスクを新しいものに取り替えます。取り替えたあと,マニュアル「HiRDB システム運用ガイド」の「ディスク障害が発生したときの対処方法」で示すRDエリアの回復の直前までの手順を実施しておく必要があります。ハードディスクそのものの取り替え方法については,ハードディスクなどのマニュアルを参照してください。
(c) ログのアンロード
ハードディスクの取り替えが完了したら,オリジナルとレプリカのRDエリアを障害発生前の状態まで回復します。回復には,システムログのアンロードファイルが必要です。アンロードファイルは,pdlogunldコマンドを使って取得します。次に,pdlogunldコマンドの実行例を示します。
- pdlogunldコマンドの実行例
pdlogunld -d sys -s bes1 -g logfg03 -o /uldir/ulog03
(d) オリジナルRDエリアの回復
オリジナルとレプリカ両方のRDエリアの回復が必要ですが,ハードウェアのミラーリング機能が有効である場合,オリジナルを回復することで,ミラーリングのコピー機能でレプリカRDエリアへも反映されます。
RDエリアの回復にはpdrstrコマンドを使用します。差分バックアップを使用するため,-gオプション,-Kオプションを指定します。これらのオプションには,「レプリカRDエリアのバックアップ(フルバックアップ)の取得」で指定した値を指定します。-lオプションには「ログのアンロード」で取得したアンロードファイルを指定します。次に,pdrstrコマンドの実行例を示します。
- pdrstrコマンドの実行例
pdrstr -m /hirdb/rdarea/rdmast/rdmast01 -g GRP01 -K /control/dfmgr -l /uldir/ulog03 -r RD01 -q 0
(3) 回復後のレプリカRDエリアのバックアップ(フルバックアップ)の取得
障害の回復後,レプリカRDエリアのバックアップを取得します。バックアップ取得中には,オリジナルRDエリアの業務は再開しておきます。
-
ペアボリュームの分離
-
オリジナルRDエリアの閉塞解除とオープン
-
オリジナルRDエリアの更新業務の再開
-
レプリカRDエリアのバックアップ(フルバックアップ)の取得
-
ペアボリュームの生成
これは,手順4のレプリカRDエリアのバックアップ(フルバックアップ)の取得以外(手順1〜手順3,手順5)は,「回復後のレプリカRDエリアのバックアップの取得」と同じ操作をします。操作内容については,「回復後のレプリカRDエリアのバックアップの取得」を参照してください。ここでは,手順4のレプリカRDエリアのバックアップ(フルバックアップ)の取得操作について説明します。
- レプリカRDエリアのバックアップ(フルバックアップ)の取得
-
レプリカRDエリアのフルバックアップを取得します。フルバックアップを取得するときは,「レプリカRDエリアのバックアップ(フルバックアップ)の取得」と同じコマンドを実行しますが,このとき,-gオプションに'(S)'を指定する必要はありません。次に,pdcopyコマンドの実行例を示します。
- pdcopyコマンドの実行例
pdcopy -m /hirdb/rdarea/rdmast/rdmast01 -b /bkdir/dfbk03 -r RD01 -q 1 -g GRP01 -K /control/dfmgr -d a