スケーラブルデータベースサーバ HiRDB Version 8 システム運用ガイド(UNIX(R)用)

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

20.3.1 例題1(全RDエリアを回復する場合

システム用RDエリアを含む全RDエリアを障害発生直前の最新の同期点に回復します。バックアップは,システム単位で取得したバックアップ(全RDエリアを対象としたバックアップ)があります。システムログファイルの運用方法は,システムログをアンロードする運用をしています。

<この項の構成>
(1) pdloglsコマンドで現用のシステムログファイルを調べます
(2) pdlogswapコマンドでシステムログファイルをスワップします
(3) 現用だったファイルの内容をpdlogunldコマンドでアンロードします
(4) pdstop又はpdstop -PコマンドでHiRDBを正常終了又は計画停止します
(5) pdstart -rコマンドでHiRDBを開始します
(6) pdrstrコマンドでマスタディレクトリ用RDエリアを最新の同期点に回復します
(7) pdrstrコマンドでデータディレクトリ用RDエリアなどをバックアップ取得時点に回復します
(8) pdstopコマンドでHiRDBを正常終了します
(9) pdstartコマンドでHiRDBを開始します
(10) pdholdコマンドでRDエリアを閉塞,クローズ状態にします
(11) pdholdコマンドでデータディクショナリ用RDエリアを閉塞,クローズ状態にします
(12) pdrstrコマンドでマスタディレクトリ用RDエリア以外のRDエリアを最新の同期点に回復します
(13) pdrelsコマンドでデータディクショナリ用RDエリアの閉塞を解除し,オープン状態にします
(14) pdrelsコマンドでそのほかのRDエリアの閉塞を解除し,オープン状態にします
(15) pdcopyコマンドで全RDエリアのバックアップを取得します
(16) pdstopコマンドでHiRDBを正常終了します
(17) pdstartコマンドでHiRDBを開始します
(18) データディクショナリLOB用RDエリア(オブジェクト格納用)を回復します

(1) pdloglsコマンドで現用のシステムログファイルを調べます

HiRDB/パラレルサーバの場合は,ディクショナリサーバ及びバックエンドサーバのシステムログファイルを調べてください。

 
pdlogls -d sys
 

(2) pdlogswapコマンドでシステムログファイルをスワップします

現用ファイルの内容をアンロードするため,システムログファイルをスワップします。HiRDB/パラレルサーバの場合は,ディクショナリサーバ及びバックエンドサーバのシステムログファイルをスワップしてください。

 
pdlogswap -d sys -w
 

(3) 現用だったファイルの内容をpdlogunldコマンドでアンロードします

(1)で調べた現用ファイルの内容をアンロードしてください。HiRDB/パラレルサーバの場合は,ディクショナリサーバ及びバックエンドサーバの現用ファイルの内容をアンロードしてください。

 
pdlogunld -d sys -s bes1 -g log01 -o /unld/unldlog02
 

●自動ログアンロード機能を使用している場合
この操作は必要ありません。pdlogatulコマンドで自動ログアンロード機能が動作していることを確認してください。また,pdloglsコマンドでアンロード処理が終了したかどうかを確認してください。

(4) pdstop又はpdstop -PコマンドでHiRDBを正常終了又は計画停止します

HiRDBを正常終了又は計画停止できない場合は,ステータスファイルを初期化してください。いったんpdstsrmコマンドでステータスファイルを削除した後に,pdstsinitコマンドでステータスファイルを再作成してください。

 
pdstop
 

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

 
pdstart -r
 

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

 
pdrstr -m /rdarea/mast/mast01 -b /pdcopy/backup01
-l /unld/unldlog01,/unld/unldlog02 -w /tmp/sortwork -r rdmast
 

〔説明〕
-m:マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。
-b:マスタディレクトリ用RDエリア(rdmast)のバックアップが格納されているバックアップファイルの名称を指定します。
-l:アンロードログファイルの名称を指定します。
-w:ソート用ワークディレクトリの名称を指定します。
-r:マスタディレクトリ用RDエリア(rdmast)の名称を指定します。

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

次に示すRDエリアをバックアップ取得時点に回復します。

なお,pdstart -rコマンドでHiRDBを開始している場合は,pdrstrコマンドを同時に複数起動しないでください。

 
pdrstr -m /rdarea/mast/mast01 -b /pdcopy/backup01 
-r rddir,rddic,diclob,regrd,reglob
 

〔説明〕
-m:マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。
-b:バックアップを格納したバックアップファイルの名称を指定します。
-r:回復するRDエリアの名称を指定します。

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

 
pdstop
 

(9) pdstartコマンドでHiRDBを開始します

 
pdstart
 

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

マスタディレクトリ用RDエリア及びデータディクショナリ用RDエリアを除いた全RDエリアを閉塞,クローズ状態にします。

 
pdhold -r rddir,diclob,regrd,reglob,rdarea01,rdarea02,… -c
 

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

データディクショナリ用RDエリアの閉塞,クローズは最後に行う必要があります。

 
pdhold -r rddic -c
 

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

 
pdrstr -m /rdarea/mast/mast01 -b /pdcopy/backup01 
-l /unld/unldlog01,/unld/unldlog02 -w /tmp/sortwork 
-r rddir,rddic,diclob,regrd,reglob,rdarea01,rdarea02,…
 

〔説明〕
-m:マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。
-b:バックアップファイルの名称を指定します。
-l:アンロードログファイルの名称を指定します。
-w:ソート用ワークディレクトリの名称を指定します。
-r:回復するRDエリアの名称を指定します。

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

データディクショナリ用RDエリアの閉塞解除,オープンは最初に行う必要があります。

 
pdrels -r rddic -o
 

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

マスタディレクトリ用RDエリア及びデータディクショナリ用RDエリアを除いた全RDエリアの閉塞を解除し,オープン状態にします。

 
pdrels -r rddir,diclob,regrd,reglob,rdarea01,rdarea02,… -o
 

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

 
pdcopy -m /rdarea/mast/mast01 -M r -a -b /pdcopy/backup01
-z /pdcopy/logpoint01 -p /pdcopy/list01
 

〔説明〕
-m:マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。
-M:バックアップ取得モードに参照可能モードを指定します。
-a:全RDエリアのバックアップを取得することを指定します。
-b:バックアップファイル名を指定します。
-z:ログポイント情報ファイル名を指定します。自動ログアンロード機能を使用している場合に指定することをお勧めします。
-p:pdcopyコマンドの実行結果リストの出力ファイル名を指定します。
バックアップの取得については,「6. バックアップの取得方法」を参照してください。

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

 
pdstop
 

(17) pdstartコマンドでHiRDBを開始します

 
pdstart
 

(18) データディクショナリLOB用RDエリア(オブジェクト格納用)を回復します

データディクショナリLOB用RDエリア(オブジェクト格納用)の回復手順を次に示します。

〈手順〉
  1. pdmodコマンドで,オブジェクト格納用のデータディクショナリLOB用RDエリアを再初期化します。
    pdmod -a /pdmod/mod01
  2. ALTER ROUTINEで,全ストアドルーチン及び全トリガのSQLオブジェクトを再作成します。
    ALTER ROUTINE ALL

 

コマンドの実行後,実行結果が正しいかどうか確認することをお勧めします。コマンドの実行結果の確認方法については,マニュアル「HiRDB Version 8 コマンドリファレンス」を参照してください。