Comments
Description
Transcript
回復履歴ファイルの操作と運用
回復履歴ファイル 回復履歴ファイルの ファイルの操作と 操作と運用 第1.00版 2006年 12月 お断り:当資料は、DB2 for Linux, UNIX and Windows V9.1をベースに作成されています。 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 本書に含まれている情報は、正式なIBMのテストを受けていません。また、明記にしろ、暗黙的にしろ、なんらの保証もなしに 配布されるものです。 この情報の使用またはこれらの技術の実施は、いずれも、使用先の責任において行われるべきものであり、それらを評価し、 実際に使用する環境に統合する使用先の判断に依存しています。それぞれの項目は、ある特定の状態において正確である ことがIBMによって調べられていますが、他のところで同じまたは同様の結果が得られる保証はありません。これらの技術を 自身の環境に適用することを試みる使用先は、自己の責任において行う必要があります。 © Copyright IBM Japan Systems Engineering Co., Ltd. 2005 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 2 この資料の内容 この資料の目的 回復履歴ファイルとは 目的 存在する場所とファイル名 回復履歴ファイルの操作 参照方法 更新方法 削除方法 回復履歴ファイルの運用 有効期限の指定 バックアップ・ファイルからの回復方法 回復履歴ファイルのサイズの見積り LIST HISTORY コマンドの出力例 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 3 この資料の目的 DB2 V8.2以降、内部的に回復履歴ファイルを使用する新機能が追加 されている。そのため、当資料では、DB2 LUWを使用したシステムに おいて、回復履歴ファイルの運用が問題なく行えるように、回復履歴 ファイルに関する操作、設定、運用、見積りに関する情報を提供する ことを目的としている。 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 4 回復履歴ファイルとは 目的 データベース単位に作成され、リカバリーと管理のさまざまなイベントの記 録を行う 用途 データベース管理者が使用するケース データベースあるいは表スペースを回復する際に参照して、必要なバックアップ・イ メージを特定する。 オンラインバックアップ取得時に、最低限必要なログファイルを特定する。 DB2が内部的に使用するケース 増分バックアップの自動(AUTOMATIC)リストア時に、バックアップ・イメージを特定す るために使用する。 db2ckrst コマンドで増分リストアのリストを出力する際に使用する。 ロールフォワード時にアーカイブされたログ・ファイルの場所を特定するために使用す る。 V8.2 以降 RECOVER DATABASE コマンドを使用する際に、必要なバックアップ・イメージを特定 するために使用する。 V8.2 以降 データベースのREBUILD時に、どのバックアップ・イメージにどのテーブルスペースが 格納されているかを、特定するために使用する。 V9.1 new! ©日本IBMシステムズ・エンジニアリング(株) Information Management部 5 回復履歴ファイルとは 以下の操作が実行されるたびに自動更新される データベースまたは表スペースのバックアップ データベースまたは表スペースのリストア データベースまたは表スペースのロールフォワード データベースの自動リビルドにより、リストアが実行される 表スペースの作成 表スペースの変更(alter tablespace) 表スペースの静止(quiesce tablespace) 表スペースの名前変更 表スペースのドロップ 表のロード 表のドロップ V9.1 new! 表が格納されている表スペースの属性が「dropped table recovery=ON(デフォルト)」 の場合 パーティション表の場合は表スペースの属性にかかわらず記録される 表の再編成 パーティション表の場合は1パーティションにつき1エントリーが記録される ARCHIVE LOGコマンドによるログ・アーカイブ オンデマンド・ログ・アーカイブの呼び出し 新規ログ・ファイルの書き込み (リカバリー可能ログの使用時) ログ・ファイルのアーカイブ (リカバリー可能ログの使用時) V8.2以降 データベースのリカバリー V8.2 以降 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 6 回復履歴ファイルとは 存在する場所とファイル名 <データベース・ディレクトリ>/db2rhist.asc ・・・ 回復履歴ファイル <データベース・ディレクトリ>/db2rhist.bak ・・・ バックアップ <データベース・ディレクトリ>は以下のディレクトリを指す <CREATE DATABASE コマンドで指定したディレクトリ>/<インスタンス名> /NODExxxx/SQLyyyyy/ – xxxxはデータベース・パーティション番号(非区分化環境の場合は0000) – yyyyy はデータベースが作成された順番に00001 から始まる番号 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 7 回復履歴ファイルの操作 参照方法 LIST HISTORY コマンドを使用する 実行の際にデータベース接続は必要ない >>-LIST HISTORY--+-------------------+--+-ALL----------------------------------+--FOR--+----------+-- database-alias -->< +-DATABASE-+ +-BACKUP------------+ +-SINCE-- timestamp -------------------+ `-DB-------' +-ROLLFORWARD-------+ `-CONTAINING--+- schema.object_name -+-’ +-DROPPED TABLE-----+ `- object_name --------' +-LOAD--------------+ +-CREATE TABLESPACE-+ +-ALTER TABLESPACE--+ +-RENAME TABLESPACE-+ +-REORG-------------+ '-ARCHIVE LOG-------' 例 $ db2 list history since 20050101 for sample SAMPLEデータベース 2005年1月1日以降 $ db2 list history backup all for sample バックアップに 関連する履歴 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 SAMPLEデータベース 全て 8 回復履歴ファイルの操作 LIST HISTORY コマンドの出力例 $ db2 list history backup all for sample sample の履歴ファイルのリスト 突き合わせファイル項目数 = 1 Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------B D 20061120164652001 F D S0000000.LOG S0000000.LOG ---------------------------------------------------------------------------2 個の表スペースを含みます: 00001 SYSCATSPACE 00002 USERSPACE1 ---------------------------------------------------------------------------コメント: DB2 BACKUP SAMPLE OFFLINE 開始時刻: 20061120164652 終了時刻: 20061120164653 状況: A ---------------------------------------------------------------------------EID: 1 場所: /home/tukiv9 Op(操作)=B(バックアップ)、Obj(オブジェクト)=D(データベース)、Timestamp(タイムスタンプ)=20061120164652 、 Sequence(シーケンス)=001、Type(タイプ)=F(オフライン)、Dev(装置タイプ)=D(ディスク)、最初のログ=S0000000.LOG、 現在のログ=S0000000.LOG ©日本IBMシステムズ・エンジニアリング(株) Information Management部 9 回復履歴ファイルの操作 (参考)LIST HISTORY コマンドの出力の記号一覧 操作 タイプ 操作 意味 A 表スペースの作成(追加) B バックアップ C ロードのコピー・ファイル取得 D ドロップされた表 F ロールフォワード G 表の再編成 L ロード N 表スペースの名前変更 O 表スペースのドロップ Q 静止 R リストア T 表スペースの変更 U アンロード X アーカイブ・ログ 操作 B F G L Q タイプ( タイプ(続き) タイプ F N I O D E E P F N I R S U X Z 意味 オフライン オンライン 増分オフライン 増分オンライン デルタ・オフライン デルタ・オンライン ログの最後 ポイント・イン・タイム オフライン オンライン 挿入 操作 タイプ F N R I O C T R N P M F X 置換 静止共有 1 2 静止更新 静止排他 静止リセット オブジェクト 意味 オフライン オンライン 増分オフライン 増分オンライン コンテナーの追加 リバランス アーカイブ・ログ・コマンド 1 次ログ・パス 2 次 (ミラー) ログ・パス フェイルオーバー・アーカ イブ・パス 1 次ログ・アーカイブ・メ ソッド 2 次ログ・アーカイブ・メ ソッド (参考) マニュアル「参照情報」-「API」-「DB2 API」-「データ構造」-「db2HistoryData 」 http://publib.boulder.ibm.com/infocenter/db2luw/v9/topic/com.ibm.db2.udb.admin.doc/doc/r0001854.htm マニュアル「参照情報」-「コマンド」-「DB2 Database for LUW」-「コマンド行プロセッサー(CLP)」-「LIST HISTORY」 http://publib.boulder.ibm.com/infocenter/db2luw/v9/topic/com.ibm.db2.udb.admin.doc/doc/r0001991.htm ©日本IBMシステムズ・エンジニアリング(株) Information Management部 10 オブジェクト 意味 D データベース P 表スペース T 表 状況 状況 A D E I N 意味 処理 削除 (将来の利用) 期限切れ 非アクティブ 未コミット 回復履歴ファイルの操作 更新方法 UPDATE HISTORY コマンドを使用する データベース接続が必要 >>-UPDATE HISTORY--+-FOR--object-part-+--WITH-----+-LOCATION--new-location--DEVICE TYPE--new-device-type-+---->< '-EID--eid---------' +-COMMENT--new-comment---------------------------------+ '-STATUS--new-status-----------------------------------' 例 $ db2 connect to sample SAMPLEデータベース $ db2 update history for 20050105195734001 with location 2005年1月5日19時57分34秒に取得した バックアップ関連 /home/moba/backup2 device type D 新しい場所 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 ディスク 11 回復履歴ファイルの操作 削除方法 PRUNE HISTORY コマンドを使用する データベース接続が必要 >>-PRUNE----+-HISTORY-- timestamp --+-------------------+--+------------+--+->< | `-WITH FORCE OPTION-’ `-AND DELETE-’ | `-LOGFILE PRIOR TO-- log-file-name ----------------------------’ 例 $ db2 connect to sample SAMPLEデータベース $ db2 prune history 20050101 2005年1月1日以前の情報を削除 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 12 回復履歴ファイルの操作 PRUNE HISTORY コマンドのオプションの解説 WITH FORCE OPTION このオプションを指定すると、タイム・スタンプで全ての情報を削除するよう に指定すると、最新のリストア・セット(バックアップに関連する情報)を含め て削除する。 このオプションを指定しない場合、タイム・スタンプで全ての情報を削除する ように指定しても、最新のリストア・セットは削除されない。 AND DELETE V8.2 以降 回復履歴ファイルの項目を削除する際に、 関連するアーカイブ・ログを (ロ ケーション情報に基づいて) 物理的に削除する – バックアップ・ファイルは削除されない ただし、USEREXITプログラムによりログをアーカイブしている場合は、この オプションを使用してもログは削除されない ©日本IBMシステムズ・エンジニアリング(株) Information Management部 13 回復履歴ファイルの操作 (参考)AND DELETEオプションの例 T1 T2 T3 ログ0 ログ1 T4 T5 ログ2 バックアップ1 T6 T7 ログ3 ログ4 バックアップ2 T8 T9 T10 ログ5 時間(時刻) ログ6 バックアップ3 LIST HISTORY コマンドの出力を表形式にまとめたもの 時間 対象 操作 オブジェクト タイムスタンプ(+ タイムスタンプ(+シーケンス (+シーケンス) シーケンス) タイプ 装置 最初の 最初のログ 現在の 現在のログ T1 バックアップ1 B D 20050114140248001 F D S0000000.LOG S0000000.LOG T2 ログ0 X D 20050114140326 1 D S0000000.LOG C0000000 T3 ログ1 X D 20050114140409 1 D S0000001.LOG C0000000 T4 ログ2 X D 20050114140417 1 D S0000002.LOG C0000000 T5 バックアップ2 B D 20050114140434001 F D S0000003.LOG S0000003.LOG T6 ログ3 X D 20050114140507 1 D S0000003.LOG C0000000 T7 ログ4 X D 20050114140519 1 D S0000004.LOG C0000000 T8 ログ5 X D 20050114140531 1 D S0000005.LOG C0000000 T9 バックアップ3 B D 20050114140545001 F D S0000006.LOG S0000006.LOG T10 ログ6 X D 20050114140632 1 D S0000006.LOG C0000000 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 14 バックアップID バックアップID 回復履歴ファイルの操作 (参考)AND DELETEオプションの例(続き) 時刻T5(バックアップ2)以前の情報を削除する $ db2 connect to histdb データベース接続情報 データベース・サーバー SQL 許可 ID ローカル・データベース別名 = DB2/AIX64 9.1.0 = TUKIV9 = HISTDB $ db2 prune history 20050114140434 and delete DB20000I PRUNE コマンドが正常に終了しました。 20050114140434 = 時刻T5 アーカイブ先の内容 Prune $ ls S0000000.LOG S0000001.LOG Prune AND DELETE オプションを指定する 前 S0000002.LOG S0000003.LOG S0000004.LOG S0000005.LOG S0000006.LOG S0000000.LOG ~ S0000002.LOG が 削除された 後 $ ls S0000003.LOG S0000004.LOG S0000005.LOG ©日本IBMシステムズ・エンジニアリング(株) Information Management部 S0000006.LOG 15 回復履歴ファイルの操作 (参考)AND DELETEオプションの例(続き) PRUNE後の回復履歴ファイルの内容 T1 T2 T3 ログ0 ログ1 T4 T5 ログ2 バックアップ1 T6 T7 ログ3 ログ4 T8 T9 T10 ログ5 時間 ログ6 バックアップ3 バックアップ2 回復履歴ファイル 回復履歴ファイルから ファイルから エントリーが が削除された エントリー 削除された部分 された部分 物理削除された 物理削除されたファイル されたファイル LIST HISTORY コマンドの出力を表形式にまとめたもの 時間 対象 操作 オブジェクト タイムスタンプ(+ タイムスタンプ(+シーケンス (+シーケンス) シーケンス) タイプ 装置 最初の 最初のログ 現在の 現在のログ T6 ログ3 X D 20050114140507 1 D S0000003.LOG C0000000 T7 ログ4 X D 20050114140519 1 D S0000004.LOG C0000000 T8 ログ5 X D 20050114140531 1 D S0000005.LOG C0000000 T9 バックアップ3 B D 20050114140545001 F D S0000006.LOG S0000006.LOG T10 ログ6 X D 20050114140632 1 D S0000006.LOG C0000000 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 16 バックアップID バックアップID 回復履歴ファイルの運用 有効期限の指定 2つのデータベース構成パラメーターで指定する rec_his_retentn num_db_backups – 回復履歴ファイル内にバックアップ情報を保存する期間(日数)を 指定する – 何日前のバックアップまで保持するか? – 回復履歴ファイル内にバックアップ情報を保存するバックアップ数 (=世代数)を指定する – 何世代前のバックアップまで保持するか? 構成パラメーターによる有効期限指定の考慮点 構成パラメーターによって有効期限の設定を行った場合、データ ベースのBACKUPが取得されたタイミングで、有効期限切れのエン トリーが削除される。 そのため、FlashCopyによるバックアップ等、DB2のBACKUPコマンド を使用しない運用を行う場合、prune historyコマンドを使用して手動 で削除を行う必要がある。 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 17 回復履歴ファイルの運用 有効期限の指定(続き) “有効期限切れ”のチェック(ガーベッジ・コレクション) 以下の処理を実行した時に自動的にチェックが行われる – 完全な非増分バックアップ操作が正常に完了した後 – ロールフォワード操作不要のデータベース・リストア操作が正常に完了した後 – 正常なデータベース・ロールフォワード操作が正常に完了した後 指定した期間/世代を超えたバックアップ情報は、”有効期限切れ”として、 『状況』欄が”E”となる (例) Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------B D 20061205200710001 F D S0000006.LOG S0000006.LOG ---------------------------------------------------------------------------3 個の表スペースを含みます: 有効期限切れ 有効期限切れ 00001 SYSCATSPACE 00002 USERSPACE1 00003 RTS2 ---------------------------------------------------------------------------コメント: DB2 BACKUP HISTDB OFFLINE 開始時刻: 20061205200710 終了時刻: 20061205200712 状況: E ---------------------------------------------------------------------------EID: 40 場所: /home/tukiv9/rhist ©日本IBMシステムズ・エンジニアリング(株) Information Management部 18 回復履歴ファイルの運用 有効期限の指定(続き) 回復履歴ファイルの削除 “有効期限切れ”のバックアップ情報は、以下の処理時に自動的に回復履歴 ファイルから削除(prune)される – すべての全 (非増分) データベース・バックアップ操作の後 バックアップ・ファイル自体が削除されるわけではないことに注意 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 19 回復履歴ファイルの運用 (参考)rec_his_retentn rec_his_retentn - リカバリー履歴保存期間 リカバリー履歴保存期間 構成パラメーター 構成パラメーター 構成タイプ 構成タイプ データベース パラメーター・ ・タイプ パラメーター 構成可能 デフォルト[ デフォルト[範囲] 範囲] 366 [ -1; 0 -- 30 000 ] 単位 日数 このパラメーターは、バックアップの履歴情報を保存する日数を指定します。リカバリー履歴ファイルがバックアップ、リストア、ロードの追跡に必要 でない場合、このパラメーターの値を小さく設定することができます。 このパラメーターの値が -1 の場合、フル・データベース・バックアップ (およびそのデータベース・バックアップに関連した表スペース・バックアップ) を示す項目数が、num_db_backups パラメーターによって指定された値に対応します。リカバリー履歴ファイル内の他の項目は、使用可能なコマン ドまたは API を明示的に使用することによってのみ、枝取りすることができます。 保存期間がどんなに短くても、PRUNE ユーティリティーに FORCE オプションを指定していなければ、ほとんどのフル・データベース・バックアップと そのリストア・セットは必ず保存されます。 http://publib.boulder.ibm.com/infocenter/db2luw/v9/topic/com.ibm.db2.udb.admin.doc/doc/r0000335.htm ©日本IBMシステムズ・エンジニアリング(株) Information Management部 20 回復履歴ファイルの運用 (参考)num_db_backups num_db_backups - データベース・ データベース・バックアップの バックアップの数 構成パラメーター 構成パラメーター 構成タイプ 構成タイプ データベース パラメーター・ パラメーター・タイプ オンラインで構成可能 伝搬クラス 伝搬クラス トランザクション境界 デフォルト[ デフォルト[範囲] 範囲] 12 [ 1 -- 32 768] このパラメーターは、データベースのために保存するデータベース・バックアップの数を指定します。指定したバックアップ数に達すると、リカバリー 履歴ファイルで古いバックアップが有効期限切れとマークされます。有効期限が切れたデータベース・バックアップに関連する表スペース・バック アップおよびロード・コピー・バックアップのリカバリー履歴ファイル項目も有効期限切れとマークされます。バックアップに有効期限切れのマークが 付けられると、物理バックアップは、その保管場所 (たとえば、ディスク、テープ、TSM など) から除去できます。次のデータベース・バックアップが 行われると、有効期限が切れた項目がリカバリー履歴ファイルから除去されます。 データベース・バックアップが履歴ファイルで有効期限切れとマークされると、DB2 Data Links Manager を介してリンクされた対応するファイル・ バックアップが、そのアーカイブ・サーバーから除去されます。 rec_his_retentn 構成パラメーターは、 num_db_backups の値と互換性のある値に設定してください。たとえば、 num_db_backup が大きい値に設定さ れている場合、 rec_his_retentn は、バックアップ数をサポートするのに十分な大きさの値が設定されていなければなりません。 http://publib.boulder.ibm.com/infocenter/db2luw/v9/topic/com.ibm.db2.udb.admin.doc/doc/r0002215.htm ©日本IBMシステムズ・エンジニアリング(株) Information Management部 21 回復履歴ファイルの運用 バックアップ・ファイルからの回復方法 RESTORE DATABASEコマンドにより、データベース/表スペースのバック アップ・イメージから回復履歴ファイルのみをリストアすることができる。 >>-RESTORE--DATABASE-- source-database-alias --HISTORY FILE---+---------------… +--+-----------------------+-- … +-USE---TSM---- … + `-TAKEN AT - date-time -’ +-FROM-- … + 特徴 既存のデータベースが存在する場合: 既存の回復履歴ファイルが、バックアップ・イメージ内の回復履歴ファイルで上書きされる。 データベースが存在しない場合: RESTORE コマンドの TO オプションで指定したディレクトリ以下にデータベース・ディレク トリの内容が回復され、回復履歴ファイルもその中に存在する。 データベースのリストア時には回復履歴ファイルは上書きされない。 最新の回復履歴ファイルを保存するため。 データベースのリストア時に回復履歴ファイルも同時にリストアするためには、RESTORE コマンドに「REPLACE HISTORY FILE」オプションを追加する。 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 22 回復履歴ファイルの運用 バックアップ・ファイルからの回復方法の例 既存のデータベースが存在する場合 上書きされた! $ ls -l HISTDB/tukiv9/NODE0000/SQL00001/db2rhist.asc 61889 Dec 05 19:23 HISTDB/tukiv9/NODE0000/SQL00001/db2rhist.asc -rw-r----- 1 tukiv9 system $ db2 restore db histdb history file from . taken at 20061205192321 DB20000I RESTORE DATABASE コマンドが正常に完了しました。 $ ls -l HISTDB/tukiv9/NODE0000/SQL00001/db2rhist.asc 53620 Dec 05 19:24 HISTDB/tukiv9/NODE0000/SQL00001/db2rhist.asc -rw-r----- 1 tukiv9 system データベースが存在しない場合 $ ls -l ../tukiv9/NODE0000/SQL00001/db2rhist.asc ls: 0653-341 ファイル ../tukiv9/NODE0000/SQL00001/db2rhist.asc が存在しません。 $ db2 restore db histdb history file from . taken at 20061205192321 DB20000I RESTORE DATABASE コマンドが正常に完了しました。 $ ls -l ../tukiv9/NODE0000/SQL00001/db2rhist.asc db2rhist.asc -rw-r----- 1 tukiv9 system 53620 Dec 05 19:29 ../tukiv9/NODE0000/SQL00001/db2rhist.asc 作成された! ©日本IBMシステムズ・エンジニアリング(株) Information Management部 23 回復履歴ファイルのサイズの見積り 回復履歴ファイルのサイズの増加 各処理によってどの程度、回復履歴ファイル(db2rhist.asc)が増加するかを テスト環境で測定したところ、1エントリーあたりの増加量は、1KBに達しない 処理がほとんどであった。 表や表スペースの削除のように出力にDDLを含むイベントは、1KBを超える ケースも見られた。 環境や構成などにより値は変わり得るため、正確な値が必要な場合は、使用す る環境で測定する必要がある 出力サイズの変動要素 – – – – – – – 表や表スペースのDDLの長さ リストア時の、リストア対象ファイル数(1バックアップ・ファイルにつき1エントリー出力) バックアップに含まれる表スペース数 バックアップ取得場所(取得先パスのパス長) 表スペースのコンテナー名 ロード元ファイル名 など・・・ 運用状況により、全体のファイルサイズを見積もる (例) – – – – 1日あたり50回のLOADを行う 1日あたりアーカイブされるログファイルが200個 週1回データベースのバックアップを行う など ©日本IBMシステムズ・エンジニアリング(株) Information Management部 24 ・・・50×1KB/日 ・・・200×1KB/日 ・・・ 1KB/週 回復履歴ファイルのサイズの見積り エントリー追加による回復履歴ファイルのサイズ増加 テスト環境による測定結果(DB2 UDB V8.2/V9.1 for AIX) AIX環境の場合、V8.2/V9.1では、増加量の違いは特に見られなかった。 処理内容 増加サイズ データベースのバックアップ(1データベース) 1065 データベースのリストア(1データベース) 1003 データベースのロールフォワード(1データベース) 1024 表スペースの作成(1表スペース) 803 表スペースの変更(1表スペース) 819 表スペースの静止(1表スペース) 794 表スペースの名前変更(1表スペース) 825 表スペースのドロップ 801 表のロード 1050 表のドロップ 2322 備考 表スペースの属性が「dropped table recovery=ON」の場合のみ。 表のDDLが出力に含まれるため、複雑な表の出力はサイズが大きくなる。 表の再編成 786 ARCHIVE LOGコマンドによるログ・アーカイブ 768 パーティション表の場合は、1パーティションあたり1エントリー出力される。 新規ログ・ファイルの書き込み 1024 リカバリー可能ログの使用時のみ ログ・ファイルのアーカイブ 1024 リカバリー可能ログの使用時のみ データベースのリカバリー 1811 「リストア+ロールフォワード」の2エントリー分 データベースのREBUILD 4770 REBUILD対象となったバックアップイメージの数+1 (REBUILD自身のエントリー分)が出力される。 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 25 回復履歴ファイルのサイズの見積り 回復履歴ファイルのサイズに関する注意事項 回復履歴ファイルのサイズ増大に伴い、Backup/Load/Reorgなどのユー ティリティー完了時間の遅延が発生する場合がある 遅延が発生する仕組み – db2rhist.bak は、db2rhist.asc に新しいレコードが追加されるたびにゼロから作られる – db2rhist.asc ファイルが大きくなると、そのサイズに比例してdb2rhist.bak ファイルを再 作成するための時間も増大する – 回復履歴ファイルへのレコードを追加する処理が完了しないと、Backup/Load/Reorg などのユーティリティーの処理が完了しない – したがって、回復履歴ファイルのサイズが非常に大きくなると、ユーティリティーの処 理の完了時間が遅延する 遅延を防ぐためには、回復履歴ファイルのサイズが大きくなりすぎないようにする – PRUNE HISTORYコマンドで、ファイル内のエントリーを削除する – rec_his_retentnデータベース構成パラメータを使用して、有効期限を短く設定する (参考) 「DB2 UDB V8(以降)において、大量にTABLEをDropする際のパフォーマンス上の注意点」 http://www-06.ibm.com/jp/software/support/techflash/49256F950035F3C3.html 「リカバリー履歴ファイルのサイズ増大に伴うBackup/Load/Reorgなどのユーティリティー完了時間の遅延について」 http://www-06.ibm.com/jp/domino01/mkt/dminfo.nsf/doc/001DC824 (DB2 V8.1 運用管理ガイド 回復の手順のP.135) ©日本IBMシステムズ・エンジニアリング(株) Information Management部 26 LIST HISTORY コマンドの出力例 データベースのバックアップ Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------B D 20061206110115001 N D S0000013.LOG S0000016.LOG ---------------------------------------------------------------------------6 個の表スペースを含みます: 00001 SYSCATSPACE 「Earliest Log」がバックアップ開始時点 00002 USERSPACE1 のログ番号を、「Current Log」がバック 00003 RTS2 アップ完了時点のログ番号を表す。 00004 RTS3 この例では、リストア時に 00005 TS4 S0000013.LOGからS0000016.LOGま 00006 SYSTOOLSPACE でのログが最低限必要。 ---------------------------------------------------------------------------コメント: DB2 BACKUP HISTDB ONLINE 開始時刻: 20061206110115 終了時刻: 20061206110118 状況: A ---------------------------------------------------------------------------EID: 116 場所: /home/tukiv9/rhist ©日本IBMシステムズ・エンジニアリング(株) Information Management部 27 LIST HISTORY コマンドの出力例 データベースのリストア Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------R D 20061206111223002 F 20061206110718 ---------------------------------------------------------------------------6 個の表スペースを含みます: 00001 SYSCATSPACE リストアしたバックアップ・イメー 00002 USERSPACE1 ジの終了タイムスタンプが記録 「Op=R」、「Type=F」なので、 00003 RTS2 される。 00004 RTS3 「オフライン・リストア」を意味す る。(P.10参照) 00005 TS4 00006 SYSTOOLSPACE ---------------------------------------------------------------------------コメント: RESTORE HISTDB WITH RF 開始時刻: 20061206111223 終了時刻: 20061206111239 状況: A ---------------------------------------------------------------------------EID: 126 場所: ©日本IBMシステムズ・エンジニアリング(株) Information Management部 28 LIST HISTORY コマンドの出力例 データベースのロールフォワード Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------F D 20061206111414 E S0000014.LOG S0000018.LOG ------------------------------------------------------------------------------------------------------------------------------------------------------コメント: 20061206021415GMT S000014.LOGから 開始時刻: 20061206111414 S0000018.LOGまでを適用 「Op=F」、「Type=E」なので、「ロ 終了時刻: 20061206111415 状況: A グの最後までのロールフォワー ド」を意味する。(P.10参照) ---------------------------------------------------------------------------EID: 132 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 29 LIST HISTORY コマンドの出力例 表スペースの作成 Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------A P 20061205194349 ---------------------------------------------------------------------------1 個の表スペースを含みます: 00001 TS1 ---------------------------------------------------------------------------コメント: CREATE TABLESPACE, ID = 3 開始時刻: 20061205194349 終了時刻: 20061205194349 状況: A ---------------------------------------------------------------------------EID: 1 場所: DDL: create tablespace ts1 ---------------------------------------------------------------------------CREATE時のステートメント ©日本IBMシステムズ・エンジニアリング(株) Information Management部 30 LIST HISTORY コマンドの出力例 表スペースの変更 Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------T P 20061205194349 ---------------------------------------------------------------------------1 個の表スペースを含みます: 00001 TS1 ---------------------------------------------------------------------------コメント: ALTER TABLESPACE 開始時刻: 20061205194349 終了時刻: 20061205194349 状況: A ---------------------------------------------------------------------------EID: 2 場所: DDL: alter tablespace ts1 prefetchsize 384 ---------------------------------------------------------------------------ALTER時のステートメント ©日本IBMシステムズ・エンジニアリング(株) Information Management部 31 LIST HISTORY コマンドの出力例 表スペースの静止 Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------Q T 20061205194827 X S0000001.LOG S0000001.LOG ---------------------------------------------------------------------------"TUKIV9 "."TT2" は 1 表スペースに常駐します: 00001 TS2 「TUKIV9.TT2」は、QUIESCE ---------------------------------------------------------------------------時に指定した表。TT2が格納さ コメント: 20061205104828GMT れているTS2が静止されている。 開始時刻: 20061205194827 終了時刻: 20061205194828 状況: A ---------------------------------------------------------------------------EID: 18 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 32 LIST HISTORY コマンドの出力例 表スペースの名前変更 Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------N P 20061205194945 S0000001.LOG ---------------------------------------------------------------------------2 個の表スペースを含みます: 00001 TS2 00002 RTS2 TS2からRTS2へ名前を変更 ---------------------------------------------------------------------------コメント: RENAME TABLESPACE, ID = 3 開始時刻: 20061205194945 終了時刻: 20061205194945 状況: A ---------------------------------------------------------------------------EID: 19 DDL: RENAME TABLESPACE TS2 TO RTS2 ---------------------------------------------------------------------------- ©日本IBMシステムズ・エンジニアリング(株) Information Management部 33 LIST HISTORY コマンドの出力例 表スペースのドロップ Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------O P 20061205194350 ---------------------------------------------------------------------------1 個の表スペースを含みます: 00001 TS1 ---------------------------------------------------------------------------コメント: DROP TABLESPACE 開始時刻: 20061205194350 終了時刻: 20061205194350 状況: A ---------------------------------------------------------------------------EID: 3 場所: DDL: drop tablespace ts1 ---------------------------------------------------------------------------- ©日本IBMシステムズ・エンジニアリング(株) Information Management部 34 LIST HISTORY コマンドの出力例 表のロード Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------L T 20061205194352001 R S S0000000.LOG S0000000.LOG ---------------------------------------------------------------------------"TUKIV9 "."TT1" は 1 表スペースに常駐します: 00001 TS2 ---------------------------------------------------------------------------コメント: DB2 開始時刻: 20061205194352 終了時刻: 20061205194355 状況: A ---------------------------------------------------------------------------EID: 7 場所: /home/moba/backup/employee.del ©日本IBMシステムズ・エンジニアリング(株) Information Management部 35 LIST HISTORY コマンドの出力例 表のドロップ Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------D T 20061205195202 000000000000011200030004 ---------------------------------------------------------------------------"TUKIV9 "."TT2" は 1 表スペースに常駐します: 00001 RTS2 ---------------------------------------------------------------------------コメント: DROP TABLE 開始時刻: 20061205195202 終了時刻: 20061205195202 状況: A ---------------------------------------------------------------------------EID: 21 DDL: CREATE TABLE "TUKIV9 "."TT2" ( "A" INTEGER , "B" CHAR(10) ) IN "RTS2" ; ---------------------------------------------------------------------------- ©日本IBMシステムズ・エンジニアリング(株) Information Management部 36 LIST HISTORY コマンドの出力例 表の再編成 通常表の場合 Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------G T 20061205195400 F S0000003.LOG S0000003.LOG ---------------------------------------------------------------------------表: "TUKIV9 "."TT2" ---------------------------------------------------------------------------コメント: REORG USE 1 開始時刻: 20061205195400 終了時刻: 20061205195400 状況: A ---------------------------------------------------------------------------EID: 28 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 37 LIST HISTORY コマンドの出力例 表の再編成(続き) パーティション表の場合(下記の例は2パーティション構成の表) パーティションIDが 出力される。 Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------G R 20061206113706 F S0000020.LOG S0000020.LOG ---------------------------------------------------------------------------表: "TUKIV9 "."DP2" ---------------------------------------------------------------------------コメント: REORG PARTN 0 開始時刻: 20061206113706 終了時刻: 20061206113706 状況: A ---------------------------------------------------------------------------EID: 144 上の二つは、各パーティション ごとに出力されるエントリー Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------G R 20061206113706 F S0000020.LOG S0000020.LOG ---------------------------------------------------------------------------表: "TUKIV9 "."DP2" ---------------------------------------------------------------------------コメント: REORG PARTN 1 開始時刻: 20061206113706 終了時刻: 20061206113706 状況: A ---------------------------------------------------------------------------EID: 145 Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------G T 20061206113706 F S0000020.LOG S0000020.LOG ---------------------------------------------------------------------------表: "TUKIV9 "."DP2" ---------------------------------------------------------------------------コメント: REORG USE 1 開始時刻: 20061206113706 終了時刻: 20061206113706 状況: A ---------------------------------------------------------------------------EID: 146 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 38 パーティション表全体に対しても、 1エントリー出力される LIST HISTORY コマンドの出力例 ARCHIVE LOGコマンドによるログ・アーカイブ Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------X D 20061205194407 N S0000000.LOG ------------------------------------------------------------------------------------------------------------------------------------------------------コメント: ARCHIVE LOG 開始時刻: 20061205194407 終了時刻: 20061205194407 状況: A ---------------------------------------------------------------------------EID: 13 ©日本IBMシステムズ・エンジニアリング(株) Information Management部 39 LIST HISTORY コマンドの出力例 新規ログ・ファイルの書き込み (リカバリー可能ログの使用時) Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------X D 20061205195400 P D S0000003.LOG C0000001 ------------------------------------------------------------------------------------------------------------------------------------------------------コメント: 開始時刻: 20061205195400 終了時刻: 状況: A ---------------------------------------------------------------------------EID: 27 場所: /home/tukiv9/HISTDB/tukiv9/NODE0000/SQL00001/SQLOGDIR/S0000003.LOG ©日本IBMシステムズ・エンジニアリング(株) Information Management部 40 LIST HISTORY コマンドの出力例 ログ・ファイルのアーカイブ (リカバリー可能ログの使用時) Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID -- --- ------------------ ---- --- ------------ ------------ -------------X D 20061205195807 1 D S0000005.LOG C0000001 ------------------------------------------------------------------------------------------------------------------------------------------------------コメント: 開始時刻: 20061205195807 終了時刻: 20061205195837 状況: A ---------------------------------------------------------------------------EID: 30 場所: /home/tukiv9/arclog/tukiv9/HISTDB/NODE0000/C0000001/S0000005.LOG ©日本IBMシステムズ・エンジニアリング(株) Information Management部 41