スケーラブルデータベースサーバ HiRDB ファーストステップガイド(Windows(R)用)

[目次][用語][索引][前へ][次へ]

4.5.4 演習3(自動ログアンロード機能を使っている場合に回復する

自動ログアンロード機能を使っている場合のデータベースの回復を行います。全RDエリア(マスタディレクトリ用RDエリア,データディレクトリ用RDエリア,およびデータディクショナリ用RDエリアを含む)を最新の状態に回復します。

全RDエリアを最新の状態に回復する場合,幾つかのRDエリアに分けて回復のための操作をする必要があります。詳細については,マニュアル「HiRDB Version 7 システム運用ガイド(Windows(R)用)」を参照してください。

<この項の構成>
(1) 必要なバックアップファイルとアンロードログファイルを特定します
(2) 現用のシステムログファイルをスワップします
(3) システムログのアンロード処理が終了したことを確認します
(4) pdloglsコマンドの実行結果が表示されます
(5) 作成されたアンロードログファイルを確認します
(6) pdstopコマンドでHiRDBを正常終了します
(7) pdfrmコマンドでHiRDBファイルを削除します
(8) pdstart -rコマンドでHiRDBを開始します
(9) pdrstrコマンドでマスタディレクトリ用RDエリアを最新の状態に回復します
(10) pdrstrコマンドでデータディレクトリ用RDエリアなどをバックアップ取得時点に回復します
(11) pdstopコマンドでHiRDBを正常終了します
(12) pdstartコマンドでHiRDBを正常開始します
(13) pdholdコマンドでRDエリアを閉塞,クローズ状態にします
(14) pdholdコマンドでデータディクショナリ用RDエリアを閉塞,クローズ状態にします
(15) pdrstrコマンドでマスタディレクトリ用RDエリア以外のRDエリアを最新の状態に回復します
(16) pdrelsコマンドでデータディクショナリ用RDエリアの閉塞を解除し,オープン状態にします
(17) pdrelsコマンドでRDエリアの閉塞を解除し,オープン状態にします
(18) pdcopyコマンドで全RDエリアのバックアップを取得します
(19) pdstopコマンドでHiRDBを正常終了します
(20) pdstartコマンドでHiRDBを正常開始します

(1) 必要なバックアップファイルとアンロードログファイルを特定します

バックアップファイルには,「4.4 バックアップを取得する」の演習3で取得したバックアップファイルを使用します。バックアップファイル名は,C:\hirdb\pdcopy\backup03です。

さらに,このバックアップを取得したとき以降に出力されたシステムログを格納したアンロードログファイルが必要になります。バックアップを取得したとき以降に出力されたシステムログは,バックアップを取得したときの最後に確認したアンロードログファイル,それ以降にアンロードされたアンロードログファイル,および現用のシステムログファイルに格納されています。HiRDBに自動アンロードされたアンロードログファイルについては,自分で管理しているアンロードログファイルの時系列リストなどで確認してください。

このマニュアルの場合,バックアップ取得後にアンロードされたアンロードログファイルは,次のファイルと仮定します。

(2) 現用のシステムログファイルをスワップします

最新の更新情報が入っている現用のシステムログファイルの内容をアンロードするためにスワップします。次のコマンドを実行してください。

 
C:\>pdlogswap -d sys -w
 

(3) システムログのアンロード処理が終了したことを確認します

スワップしたシステムログファイルがアンロードされたことを確認します。次のコマンドを実行してください。

 
C:\>pdlogls -d sys
 

(4) pdloglsコマンドの実行結果が表示されます

Statusの3カラム目に「u」(アンロード待ち状態)のシステムログがないことを確認します。アンロード待ちのシステムログがある場合,少し時間をおいてから確認してください。

 
HOSTNAME : s10380720(19075)
Group Type Server Gen No. Status Run ID Block No. Ex-Status
log1 sys sds01 1 os----u 404d7935 1 1 --------
log2 sys sds01 2 os----u 404d7935 2 6 --------
log3 sys sds01 0 os-d--u 404d7935 7 7 --------
log4 sys sds01 0 oc-d--u 404d7935 8 8 --------
log5 sys sds01 0 os----- 00000000 0 0 --------
log6 sys sds01 0 os----- 00000000 0 0 --------
 

(5) 作成されたアンロードログファイルを確認します

(4)でアンロードされたアンロードログファイル名を確認します。アンロードログファイルの出力ディレクトリを確認してください。このマニュアルの場合,ファイル名は「sds01_404d793d0003_log3」になります。

(6) pdstopコマンドでHiRDBを正常終了します

HiRDBが稼働中の場合,正常終了してください。障害が発生すると,HiRDB/シングルサーバは停止しますが,pd_mode_confオペランドを「AUTO」または「MANUAL1」に設定していると,停止したあとに自動開始することがあります。

 
C:\>pdstop

(7) pdfrmコマンドでHiRDBファイルを削除します

全RDエリアの回復なので,マスタディレクトリ用RDエリアを構成するHiRDBファイル,データディレクトリ用RDエリアを構成するHiRDBファイル,およびデータディクショナリ用RDエリアを構成するHiRDBファイルを削除する必要があります。次のコマンドを実行してください。

 
C:\>pdfrm C:\win32app\hitachi\hirdb_s\area\rdsys02\rdmast   ・・・・・・1
 
C:\>pdfrm C:\win32app\hitachi\hirdb_s\area\rdsys02\rddirt   ・・・・・・2
 
C:\>pdfrm C:\win32app\hitachi\hirdb_s\area\rdsys02\rddict   ・・・・・・3

〔説明〕
  1. マスタディレクトリ用RDエリアを構成するHiRDBファイルを削除します。
  2. データディレクトリ用RDエリアを構成するHiRDBファイルを削除します。
  3. データディクショナリ用RDエリアを構成するHiRDBファイルを削除します。

(8) pdstart -rコマンドでHiRDBを開始します

マスタディレクトリ用RDエリアが使えない場合のデータベースの回復時には,-rオプションを指定してHiRDBを開始する必要があります。次のコマンドを実行してください

 
C:\>pdstart -r
 

(9) pdrstrコマンドでマスタディレクトリ用RDエリアを最新の状態に回復します

バックアップファイル名を指定して,データベース回復ユティリティを実行してください。

 
C:\>pdrstr -m C:\win32app\hitachi\hirdb_s\area\rdsys02\rdmast -r rdmast
 -b C:\hirdb\pdcopy\backup03
 -l C:\win32app\hitachi\hirdb_s\area\unloadlog\sds01_404d793d0002_log2
    C:\win32app\hitachi\hirdb_s\area\unloadlog\sds01_404d793d0003_log3
 -p C:\hirdb\pdrstr\list03.txt
 

〔説明〕
-m
マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。
-r
マスタディレクトリ用RDエリアを指定します。
-b
バックアップファイルの名称を指定します。「4.4 バックアップを取得する」の演習3で取得したバックアップファイル名(backup03)を指定します。
-l
アンロードログファイル名を指定します。-bで指定したバックアップファイルを取得したあとに取得したシステムログファイルのアンロードログファイルを古い順に指定します。
-p
pdrstrコマンドの処理結果出力リストの出力先を指定します。C:\hirdb\pdrstrディレクトリ下にlist03.txtファイルが作成されます。

(10) pdrstrコマンドでデータディレクトリ用RDエリアなどをバックアップ取得時点に回復します

次に示すRDエリアをバックアップ取得時点に回復します。データベース回復ユティリティを実行してください。

〔説明〕
-m
マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。
-r
データディレクトリ用RDエリアなどのRDエリアを指定します。
-b
バックアップファイルの名称を指定します。「4.4 バックアップを取得する」の演習3で取得したバックアップファイル名(backup03)を指定します。
-p
pdrstrコマンドの処理結果出力リストの出力先を指定します。C:\hirdb\pdrstrディレクトリ下にlist04.txtファイルが作成されます。

(11) pdstopコマンドでHiRDBを正常終了します

HiRDBを通常の稼働状態(-r指定なしpdstart)にするため,一度HiRDBを正常終了してください。

 
C:\>pdstop
 

(12) pdstartコマンドでHiRDBを正常開始します

HiRDBを正常開始してください。

 
C:\>pdstart
 

(13) pdholdコマンドでRDエリアを閉塞,クローズ状態にします

マスタディレクトリ用RDエリアおよびデータディクショナリ用RDエリアを除いたRDエリアを閉塞,クローズ状態にします。次のコマンドを実行してください。

 
C:\>pdhold -r rddirt,dic_rtn_src,dic_rtn_obj,rddata10,rdindx10,rlob1 -c
 

〔説明〕
-r
閉塞,クローズ状態にするRDエリアを指定します。

(14) pdholdコマンドでデータディクショナリ用RDエリアを閉塞,クローズ状態にします

データディクショナリ用RDエリアを閉塞,クローズ状態にします。次のコマンドを実行してください。

 
C:\>pdhold -r rddict -c
 

〔説明〕
-r
データディクショナリ用RDエリアを指定します。

(15) pdrstrコマンドでマスタディレクトリ用RDエリア以外のRDエリアを最新の状態に回復します

マスタディレクトリ用RDエリアのときと同様に,マスタディレクトリ用RDエリア以外のRDエリアを回復します。次のコマンドを実行してください。

 
C:\>pdrstr -m C:\win32app\hitachi\hirdb_s\area\rdsys02\rdmast
 -r rddict,rddirt,dic_rtn_src,dic_rtn_obj,rddata10,rdindx10,rlob1
 -b C:\hirdb\pdcopy\backup03
 -l C:\win32app\hitachi\hirdb_s\area\unloadlog\sds01_404d793d0002_log2
    C:\win32app\hitachi\hirdb_s\area\unloadlog\sds01_404d793d0003_log3
 -p C:\hirdb\pdrstr\list05.txt
 

〔説明〕
-m
マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。
-r
マスタディレクトリ用RDエリア以外のRDエリアのRDエリアを指定します。
-b
バックアップファイルの名称を指定します。「4.4 バックアップを取得する」の演習3で取得したバックアップファイル名(backup03)を指定します。
-l
アンロードログファイル名を指定します。-bで指定したバックアップファイルを取得したあとに取得したシステムログファイルのアンロードログファイルを古い順に指定します。
-p
pdrstrコマンドの処理結果出力リストの出力先を指定します。C:\hirdb\pdrstrディレクトリ下にlist05.txtファイルが作成されます。

(16) pdrelsコマンドでデータディクショナリ用RDエリアの閉塞を解除し,オープン状態にします

データディクショナリ用RDエリアの閉塞を解除し,オープン状態にします。次のコマンドを実行してください。

 
C:\>pdrels -r rddic -o
 

〔説明〕
-r
閉塞,クローズ状態にするRDエリアを指定します。

(17) pdrelsコマンドでRDエリアの閉塞を解除し,オープン状態にします

マスタディレクトリ用RDエリアおよびデータディクショナリ用RDエリアを除いたRDエリアの閉塞を解除し,オープン状態にします。次のコマンドを実行してください。

 
C:\>pdrels -r rddirt,dic_rtn_src,dic_rtn_obj,rddata10,rdindx10,rlob1 -o
 

〔説明〕
-r
閉塞,クローズ状態にするRDエリアを指定します。

(18) pdcopyコマンドで全RDエリアのバックアップを取得します

データベース回復直後の最新の状態で,バックアップを取得します。次のコマンドを実行してください。

 
C:\>pdcopy -m C:\win32app\hitachi\hirdb_s\area\rdsys02\rdmast -a
-M r -b C:\hirdb\pdcopy\backup04 -p C:\hirdb\pdcopy\list06.txt
 

〔説明〕
-m
マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称(C:\win32app\hitachi\hirdb_s\area\rdsys02\rdmast)を指定します。
マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称は,pdinitコマンドのcreate rdarea文でマスタディレクトリ用RDエリアを定義したときに指定しています(file nameオペランドに指定したファイル名称です)。
-a
全RDエリアのバックアップを取得するオプションです。
-M
バックアップ取得モードを指定します。
-b
バックアップファイル名を指定します。
C:\hirdb\pdcopyディレクトリ下にbackup04ファイルが作成されます。
-p
pdcopyコマンドの処理結果リストの出力先を指定します。C:\hirdb\pdcopyディレクトリ下にlist06.txtファイルが作成されます。

(19) pdstopコマンドでHiRDBを正常終了します

HiRDBを正常終了してください。

 
C:\>pdstop
 

(20) pdstartコマンドでHiRDBを正常開始します

HiRDBを正常開始してください。

 
C:\>pdstart