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

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

4.5.4 演習3(DATのバックアップを使用して回復する

データベースを格納しているディスクに障害が発生しました。DATに取得したバックアップを使用して全RDエリアを回復します。

<この項の構成>
(1) ディスクを交換します
(2) pdfmkfsコマンドでHiRDBファイルシステム領域を初期設定します
(3) RDエリアの回復に必要なファイルを準備します
(4) pdstopコマンドでHiRDBを正常終了します
(5) pdfrmコマンドでHiRDBファイルを削除します
(6) pdstart -rコマンドでHiRDBを開始します
(7) バックアップファイルが格納されているDATを用意します
(8) pdrstrコマンドで全RDエリアをバックアップ取得時点に回復します
(9) pdrstrコマンドの実行結果が表示されます
(10) pdstopコマンドでHiRDBを正常終了します
(11) pdstartコマンドでHiRDBを正常開始します

(1) ディスクを交換します

障害が発生したディスクを交換します。この演習では実際に交換はしません。交換したと仮定して以降の作業を行います。

(2) pdfmkfsコマンドでHiRDBファイルシステム領域を初期設定します

pdfmkfsコマンドでHiRDBファイルシステム領域を初期設定します。pdfmkfsコマンドで指定するオプションは,RDエリア用のHiRDBファイルシステム領域を前回作成したときと同じにしてください。システムジェネレータによって実行されたpdfmkfsコマンドについては,$PDDIR/conf/pdgen_cmd.[HiRDBサーバ名]のファイルに記録されています。

この演習の場合,これは「2.3.1(2) pdfmkfsコマンドの実行」で実行した,次のコマンドに相当します。

 
$ pdfmkfs -r -n 119 -l 400 -k SVR -e 100 -i /HiRDB/sysfiles
$ pdfmkfs -r -n 81 -l 100 -k SVR -e 100 -i /HiRDB/rdfiles
 

なお,この演習では実際にpdfmkfsコマンドを実行しません。実行したと仮定して以降の作業を行います。

(3) RDエリアの回復に必要なファイルを準備します

RDエリアの回復に必要なファイル(データベース回復ユティリティの入力情報ファイル)は次のとおりです。

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

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

 
$ pdstop

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

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

 
$ pdfrm  /HiRDB/rdfiles/master   ・・・・・・・・・・・・・・・1
 
$ pdfrm  /HiRDB/rdfiles/ddir   ・・・・・・・・・・・・・・・・・2
 
$ pdfrm  /HiRDB/rdfiles/ddic   ・・・・・・・・・・・・・・・・・3

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

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

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

 
$ pdstart -r
 

(7) バックアップファイルが格納されているDATを用意します

「4.4 バックアップを取得する」の演習3でバックアップファイルを格納したDATをDATドライブにセットします。

(8) pdrstrコマンドで全RDエリアをバックアップ取得時点に回復します

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

 
$ pdrstr -m /HiRDB/rdfiles/master -a -b /dev/st0
 -p $HOME/HiRDB/pdrstr/list03.txt
 

〔説明〕
-m
マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。
-a
全RDエリアの回復を指定します。
-b
バックアップファイルの名称を指定します。「4.4 バックアップを取得する」の演習3で全RDエリアのバックアップを取得したDATのデバイスファイル名(/dev/st0)を指定します。
-p
pdrstrコマンドの処理結果出力リストの出力先を指定します。$HOME/HiRDB/pdrstrディレクトリ下にlist03.txtファイルが作成されます。

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

 
13424 16:07:21 SDSU _pd0rstr KFPR00764-I Pdrstr started ・・・・・・・・・・・・1
13424 16:07:52 SDSU _pd0rstr KFPR26222-I Output result of
pdrstr to /home/hirm/hirdb/pdrstr/list03.txt ・・・・・・・・・・・・・・・・・・・・・・2
13424 16:07:52 SDSU _pd0rstr KFPR00765-I Pdrstr terminated,
return code=0 ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・3
 

〔説明〕
  1. pdrstrコマンドの処理が開始しました。
  2. 処理結果リストが/home/hirm/HiRDB/pdrstr/list03.txtに出力されました。
  3. pdrstrコマンドの処理が正常終了しました。

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

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

 
$ pdstop
 

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

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

 
$ pdstart