21.1.4 各種RDエリア回復時の注意
- 〈この項の構成〉
(1) マスタディレクトリ用RDエリア回復時の注意
回復対象RDエリアにマスタディレクトリ用RDエリアが含まれる場合,pdstart -rコマンドでHiRDBを開始して,pdrstrコマンドでマスタディレクトリ用RDエリアを回復する必要があります。
最新の同期点又は範囲指定の回復をする場合,いったんマスタディレクトリ用RDエリアを単独で回復してください。その後,マスタディレクトリ用RDエリア以外のRDエリアを回復してください。
(2) データディクショナリLOB用RDエリア回復時の注意
データディクショナリLOB用RDエリアは次に示す用途ごとに分かれています。
-
ストアドルーチン及びトリガのソース格納用
-
ストアドルーチン及びトリガのオブジェクト格納用
ソース格納用とオブジェクト格納用では,RDエリアを回復できる時点が異なります。
(a) ソース格納用のデータディクショナリLOB用RDエリアを回復する場合
ソース格納用のデータディクショナリLOB用RDエリアは,バックアップ取得時点及びそれ以降の任意の同期点に回復できます。このときのデータベース回復ユティリティの入力情報は,バックアップ及びシステムログ(アンロードログ)となります。
(b) オブジェクト格納用のデータディクショナリLOB用RDエリアを回復する場合
オブジェクト格納用のデータディクショナリLOB用RDエリアは,ロールフォワードに必要なデータベース更新ログを取得しないため,バックアップ取得時点だけにしか回復できません。したがって,このときのデータベース回復ユティリティの入力情報はバックアップだけとなります。
なお,次に示す場合は,〈手順〉に従ってオブジェクト格納用のデータディクショナリLOB用RDエリアを回復してください。
-
ソース格納用のデータディクショナリLOB用RDエリアをバックアップ取得時点以降の任意の同期点に回復しているが,オブジェクト格納用のデータディクショナリLOB用RDエリアと同期を合わせることができない場合
-
pdcopyコマンドの-Jオプションを指定してバックアップを取得するときに,意図的にオブジェクト格納用のデータディクショナリLOB用RDエリアを取得しなかった場合
- 〈手順〉
-
-
pdmodコマンドで,オブジェクト格納用のデータディクショナリLOB用RDエリアを再初期化します。
pdmod -a /pdmod/mod01
-
ALTER ROUTINEで,全ストアドルーチン及び全トリガのSQLオブジェクトを再作成します。
ALTER ROUTINE ALL
-
(3) ユーザLOB用RDエリア回復時の注意
ユーザLOB用RDエリアを回復する場合,そのLOB列構成基表を格納するユーザ用RDエリアも同期を合わせて回復してください。
(4) リスト用RDエリア回復時の注意
リスト用RDエリアはpdrstrコマンドでの回復の対象となりません。基表があればリストを再作成できるため,回復の対象にしていません。
なお,リスト用RDエリアが障害閉塞した場合は,次に示す手順で障害閉塞を解除してください。
- 〈手順〉
-
-
pdcloseコマンドで,障害閉塞したリスト用RDエリアをクローズします。
-
pdmodコマンドで,リスト用RDエリアを再初期化します。
-
pdrels -oコマンドで,リスト用RDエリアの障害閉塞を解除してオープンします。
- 注意事項
-
リスト用RDエリアを再初期化すると,リスト用RDエリア内のリストは使用できなくなります。この場合,ASSIGN LIST文でリストを再作成してください。
-
(5) 障害閉塞のRDエリア回復後の注意
pdstart -rコマンドでHiRDBを開始して,障害閉塞しているRDエリアを回復した場合,HiRDBの正常開始後にRDエリアを閉塞解除(pdrelsコマンド)する必要があります。
(6) 順序数生成子格納RDエリア回復時の注意
(a) バックアップ及び回復対象のRDエリアについての注意
順序数生成子格納RDエリアのバックアップを取得する場合,順序数生成子を使用する表が格納されているRDエリアのバックアップも同時に取得してください。
また,順序数生成子格納RDエリアと,順序数生成子を使用する表が格納されているRDエリアを回復する場合は,整合性が取れる時点に回復してください。この運用以外の場合,回復後に順序数生成子から取得する順序番号に重複,又は欠番が発生するおそれがあります。
(b) ログを使用した回復についての注意
ログ出力間隔に,1より大きな値を指定した順序数生成子を,ログを使用してバックアップ取得時点以降の任意の同期点,又は障害発生直前の最新の同期点まで回復した場合,回復後に順序数生成子から取得する順序番号に欠番が発生するおそれがあります。なお,バックアップ取得後から回復終了となる同期点までの間に,該当する順序数生成子から順序番号を取得したかどうかは関係ありません。
ログを使用した回復後の順序番号に重複,又は欠番が発生するおそれを,次の表に示します。
項目 |
バックアップ取得時点まで回復 |
バックアップ取得時点以降の任意の同期点,又は障害発生直前の最新の同期点まで回復 |
||
---|---|---|---|---|
ログ出力間隔※の指定値 |
ログ出力間隔※の指定値 |
|||
1 |
1より大きな値 |
1 |
1より大きな値 |
|
重複 |
− |
− |
− |
− |
欠番 |
− |
− |
− |
○ |
- (凡例)
-
−:発生しない
○:発生する
- 注※
-
ログ出力間隔については,マニュアル「HiRDB Version 9 UAP開発ガイド」を参照してください。
また,HiRDB Datareplicator及びHiRDB Dataextractorは順序数生成子を使用できないため,抽出側と反映側を切り替えて同じ名称の順序数生成子を使用する場合,反映側に抽出側の順序数生成子の現在値を引き継げません。そのため,順序数生成子から取得した順序番号が重複することがあります。
(7) 一時表用RDエリア回復時の注意
バックアップを取得できないため,一時表用RDエリアは回復できません。一時表用RDエリアに障害が発生した場合は,pdmodコマンドで一時表用RDエリアを再初期化してください。
(8) HiRDBファイルシステム領域を作成し直す場合の注意
ディスク障害などで,回復対象のRDエリアのHiRDBファイルシステム領域を作成し直す場合,次に示す設定を変更前のHiRDBファイルシステム領域と同じにしてください。設定を変更すると,データベースを回復できなくなることがあります。
-
ファイルの種類(通常ファイルか,キャラクタ型スペシャルファイルか)
-
pdfmkfsコマンドの-aオプションの指定(HiRDBファイルシステム領域を自動的に拡張する方式のRDエリアの自動増分を適用するかどうか)