RECOVER
RECOVER ユーティリティーは、コピーを復元し、次にログ・レコードを適用することにより、データを現在のポイント・イン・タイムの状態もしくは前のポイント・イン・タイムの状態にリカバリーします。RECOVER ユーティリティーでは、コミット済みの作業をバックアウトすることにより、データを前の時点までリカバリーすることもできます。
データ・リカバリーの最大の単位は表スペース または索引で、最小の単位はページです。単一オブジェクト、またはオブジェクトのリストをリカバリーすることができます。 RECOVER ユーティリティーは、表スペース全体、 索引、パーティションまたはデータ・セット、エラー範囲内のページ、 または単一ページをリカバリーします。データのリカバリーは、オブジェクトの順次イメージ・コピー、オブジェクトの FlashCopy® イメージ・コピー、システム・レベルのバックアップ、またはログから行うことができます。 整合性を保ったポイント・イン・タイム・リカバリー は、リカバリー・ポイント・イン・タイムで実行している非コミット済みトランザクションを自動的に検出し、 それらのトランザクションの変更内容を、リカバリー対象オブジェクトで ロールバックします。従って、リカバリー後には、オブジェクトは、トランザクション的に整合した 状態のままになります。
出力
RECOVER の出力は、 リカバリーされたデータ (表スペース、索引、パーティションまたはデータ・セット、エラー範囲、表スペース内の ページ) です。
必要な許可
このユーティリティーを 実行するには、以下のいずれかの権限を含む特権セットを使用する 必要があります。
- データベースの RECOVERDB 特権
- データベースの DBADM または DBCTRL 権限。ユーティリティーの処理対象のオブジェクトが、 暗黙に作成されたデータベース内にある場合、その暗黙に作成されたデータベース または DSNDB04 の DBADM 権限が必要です。
- システム DBADM 権限
- DATAACCESS 権限
- SYSCTRL または SYSADM 権限
インストール・システム SYSOPR 権限を持つ ID は、RECOVER を実行することもできますが、 それは DSNDB01 もしくは DSNDB06 データベースの表スペースのみに限られます。
RECOVER 実行についての制約事項
RECOVER ユーティリティーの一般的な使用には、以下の制約事項が適用されます。 ポイント・イン・タイム・リカバリーには、 ポイント・イン・タイム・リカバリーに関する制約事項に記載されている追加の制約事項が適用されます。
- RECOVER は、特定のボリューム ID と非特定のボリューム ID とを混合して定義された ストレージ・グループを使用するように定義された、表スペースまたは索引を リカバリーすることはできません。そのような表スペースまたは索引が指定されると、ジョブは終了し、 エラー・メッセージ DSNU419I が発行されます。
- RECOVER は、PADDED から NOT PADDED に変更された索引をリカバリー することはできません。代わりに、索引を再作成する必要があります。
- RECOVER は、ペンディングの定義変更をマテリアライズする REORG 操作より前のポイント・イン・タイムまで表スペースまたは索引をリカバリーできません。
- あるポイント・イン・タイムより後に REORG ユーティリティーによって表スペースまたは索引でペンディングの定義変更がマテリアライズされた場合、RECOVER は、そのオブジェクトをポイント・イン・タイムまでリカバリーすることはできません。
RECOVER の実行フェーズ
RECOVER ユーティリティーの実行フェーズには、 以下のものがあります。
- フェーズ
- 説明
- UTILINIT
- 初期化およびセットアップを実行します。
- RESTORE
- 適切な順次イメージ・コピーの探索とマージを行い、表スペースをバックアップ・レベルへリストアします。PARALLEL キーワードが指定されている場合は、 オブジェクトのリストを並列処理します。
- RESTORER
- PARALLEL キーワードが指定されている場合、順次イメージ・コピーを読み取ってマージします。
- RESTOREW
- PARALLEL キーワードが指定されている場合、オブジェクトにページを書き込みます。
- PRELOGC
- 予備的 LOGCSR フェーズ。オブジェクトのリカバリー・ベースが整合性のある FlashCopy イメージ・コピーの場合に、バックアウトされたコミットされていない作業を判別します。
- PRELOGA
- 予備的 LOGAPPLY フェーズ。整合性のある FlashCopy イメージ・コピーをリカバリー・ベースとするオブジェクトについて、非コミット作業を整合ポイントまで適用します。
- LOGAPPLY
- 前のフェーズまたはステップからリストアされたオブジェクトに、未解決のログ変更を 適用します。リカバリー・ジョブが LOGAPPLY フェーズの途中で失敗した場合、 そのジョブは最後のコミット・ポイントから再始動することができます。
- LOGCSR
- ログ・レコードを分析し、未完了 (inflight)、インダウト (indoubt)、アボート中 (inabort)、
アボート延期リカバリー単位 (postponed abort units of recovery) に関する情報を構成します。このフェーズは、
TORBA または TOLOGPOINT オプションが指定された場合にのみ実行されます。リカバリー・ジョブが LOGCSR フェーズの
途中で失敗した場合、そのジョブは LOGCSR フェーズの最初から再始動できます。RECOVER ジョブが失敗する前に LOGCSR フェーズを完了した DB2® メンバーには、もう一度 LOGCSR フェーズが実行されます。
BACKOUT YES 処理では、LOGCSR がログ・レコードを分析し、コミットされたリカバリー単位およびキャンセルされたリカバリー単位に関する情報を構成します。
- LOGUNDO
- アクティブなリカバリー単位がリカバリー対象オブジェクトに対して行った、
コミットされていない変更をロールバックします。このフェーズは、
TORBA または TOLOGPOINT オプションが指定された場合にのみ実行されます。LOGUNDO フェーズに
入った後でリカバリー・ジョブを再始動する必要がある場合、ポイント・イン・タイムまでのリカバリー中に
アクティブだった UR によって変更されなかったオブジェクトは、完了済みでそれ以上の処理は不要であるとマークされます。
BACKOUT YES 処理の場合、LOGUNDO フェーズでは、 オブジェクトの現行状態から指定された前のポイント・イン・タイムまで、 コミット済みの変更をバックアウトします。また、指定したポイント・イン・タイムにおける コミットされていないすべての変更は、ロールバックされます。
- UTILTERM
- 終結処理を実行します。