Comments
Description
Transcript
簡単シリーズ バックアップ リカバリー編 はじめに 2002/03
簡単シリーズ バックアップ リカバリー編 2002/03 SS&WSCC#1 はじめに この資料の目的は、DB2のバックアップ方法についての基本を理解していただくことを目的に作成されています。 ここでは、バックアップ リカバリーの基本の説明に加えて、よく見られるバックアップ形態を例として解説しています。 また、応用としまして、増分バックアップおよびESS等の磁気ディスク装置のフラッシュ コピー機能対応のための機能を説明していま す。 資料は、以下のような体裁をとっています。 - DB2のバックアップの種類とDB2ログについての説明 バックアップ種類選択のための考慮点 バックアップ リカバリーの例 コントロールセンターの紹介 応用 Incremental Backup 応用 I/O Suspend, Split/Mirror 応用 Restoreでのコンテナの変更 Systems Solution & Web Server Competence Center No.1 DM Group 1-2 バックアップの種類 BACKUP DATABASEコマンドによるバックアップ データベース、あるいは表スペース単位のフル バックアップ データ・ファイル(コンテナー)は意識する必要なし データベース、あるいは表スペース単位の増分バックアップ 取得モード:オンライン/オフライン 取得先 ディスク テープ EXPORTによる外部ファイル形式の利用によるバックアップ DEL(区切りつきASCII) WSF(ワークシート形式) IXF(統合交換形式) Systems Solution & Web Server Competence Center No.1 DM Group 解説:バックアップの種類 BACKUP DATABASEコマンドによるバックアップ BACKUP DATABSEコマンドは、DB2が提供するユーティリティーです。バックアップは、データ ベース単位、表スペース単位のどちらでも取得可能です。また、データベースに誰も接続してい ない状態でバックアップを取得するオフライン・バックアップと、データベースに接続している アプリケーションが存在する状態で、バックアップを取得できるオンラインバックアップが選択 できます。 V7.2からは、増加分だけ(差分だけ)のバックアップも可能になりました。 EXPORTによる外部ファイル形式の利用によるバックアップ Exportユーティリティーはデータベース間でのデータの移動だけでなく、他のアプリケーション とのデータの受け渡しにも使用可能です。サポートしているファイルのタイプは下記の3タイプ になります。ただし、EXPORT自身は、BACKUPコマンドに比べ低速であるため、大容量データベー スのバックアップの目的のためにのみ使用するのは不向きです。今回は詳細な説明は省いていま す。 コマンド例:export to c:¥db2backup¥tst1exp of ixf messages c:¥db2backup¥expmsg select * from administrator.employee ; 区切りつきASCII (区切りなしASCIIはIMPORT/LOADでは使用できますが、EXPORTでは使用できません) WSF(ワークシート形式) IXF(統合交換形式) Systems Solution & Web Server Competence Center No.1 DM Group 3-4 リストアーの種類 RESTORE DATABASEコマンドによるリストア 復元の単位 データベース単位(フルと増分) 表スペース単位(フルと増分) データベース単位のバックアップ・イメージから表スペース単位の復元が可能 ROLLFORWARDコマンドによるロールフォワード回復 ログの最後、または、任意の時点まで回復することが可能 IMPORTorLOADによる外部ファイル形式よりのロード IMPORTの例:import from c:¥db2backup¥tst1exp of ixf messages c:¥db2backup¥impmsg replace into administrator.employee ; 区切り付きASCII 区切りなしASCII IXF(統合交換形式) WSF(ワークシート形式) LOADでは使用不可 Systems Solution & Web Server Competence Center No.1 DM Group 解説:リストアーの種類 RESTORE DATABASEコマンドによるリストア BACKUP DATABASEコマンドでバックアップを取得したものを戻します。バージョン回復や、リ ストア・リカバリーと呼ばれるもので、バックアップを取得した時点までの回復を行います。オ ンラインバックアップで取得したバックアップ・ファイルをリストアーした場合は、ロールフォ ワード回復が必ず必要になります。 ROLLFORWARDコマンドによるロールフォワード回復 保存ログを使用している場合に、バックアップ・ファイルをリストアーしてから、ロールフォア ワード回復を実行することによりログを適用します。最新の状態までの回復と、時間指定による特定 時点までの回復を選択することができます。 IMPORTorLOADによる外部ファイル形式よりのロード IMPORTユーティリティーは、内部的にINSERT処理を行うことにより、データの表への挿入を 行います。IXF形式のIMPORTでは、表が定義されていない場合でも'CREATE'オプションを使用す ることにより表の作成も同時に可能です。 LOADユーティリティーは、ログを書かずに高速にデータの挿入を行います。LOADユーティリ ティー使用の場合は、予め表を定義しておく必要があります。 Systems Solution & Web Server Competence Center No.1 DM Group 5-6 DB2のログ DB2ログの3つ種類 活動ログ(アクティブ ログ) 現在使用中のログ オンライン・アーカイブ・ログ 保存ロギング使用時で、完了したトランザクションについてのログが保存される 活動ログと同じ、磁気ディスク上のログ・パス・ディレクトリーに保存される オフライン・アーカイブ・ログ オンライン・アーカイブ・ログをテープやログ・パス・ディレクトリー以外に移動したログ 保存ロギング時にのみ有効 ・活動ログがフルになった時点の自動的なアーカイブ処理 ・Archiveコマンドが発行された時点 オンライン・ アーカイブログ 活動ログ オフライン・ アーカイブ オフライン・ アーカイブログ or ・オンライン・アーカイブログを手動でログパス ディレクトリー以外にコピーした場合 ・USEREXIT使用時で活動ログがフルまたは、Archiveコマンドが 発行された場合 Systems Solution & Web Server Competence Center No.1 DM Group 解説:DB2のログ 活動ログ(アクティブ ログ) 現在使用中のログで、ログのなかには、データベース中のレコードの変更前と変更後の状態が入ります。コ ミットされていない状態や、コミットはされたが、まだ、表に物理的に書き込まれていない状態のトランザク ションがあれば、保存ログにはなりません。すなわち、クラッシュリカバリーで使用されるコミットデータの ロールフォワードによるディスク反映や、未コミットデータのロールバック処理に使用されます。 オンライン・アーカイブ・ログ アーカイブ・ログをDB2 UDBでは、オンライン・アーカイブ・ログとオフライン・アーカイブ・ログの2つ のアーカイブ・ログタイプに別けています。オンライン・アーカイブ・ログは、活動ログと同じディレクリー (ログ・パス・ディレクトリー)に存在するアーカイブ・ログを指しています。オンライン・アーカイブ・ ログおよび、オフライン・アーカイブ・ログは、どちらもコミット済みの情報が入ります。 オフライン・アーカイブ・ログ オフライン・アーカイブ・ログは、ログ・パス・ディレクトリー以外に置かれたアーカイブ・ログのことで す。オンライン・アーカイブ・ログをユーザー自身が移動させたり、User Exit(ユーザ出口プログラム)を定義する ことにより。活動ログから、直接ログ・パス・ディレクトリー以外の場所にアーカイブ処理(活動ログが新し いものに切り替り、古い活動ログがアーカイブ・ログとされる)を行うことができます。 良く行われる方法としては、活動ログがフルになり、アーカイブ処理された時点で、User Exitにより、十 分な容量のある磁気ディスクに直接オフライン・アーカイブ・ログを書き出し、そのディレクトリーを、1日 1回程度テープに吸い上げる方法が見られます。 Systems Solution & Web Server Competence Center No.1 DM Group 7-8 ログ運用のモード 循環ログ 活動1次 ログ1 活動1次 ログ2 活動1次 ログ3 活動2次 ログ2 活動2次 ログ1 2次ログファイルの数は、DB構成パラメータ(DB CFG)の LOGSECONDで指定 1次ログが足らなければ割り振られる 1次ログファイルの数は、DB構成パラメータ(DB CFG)の LOGPRIMARYで指定 保存ログ 活動2次 ログ DB構成パラメータ(DB CFG)の LOGPRIMARYで指定した数 オンライン・アー カイブ・ログ オンライン・アー カイブ・ログ オフライン・アー カイブ・ログ 活動1次ロ グ使用中 活動1次ロ グ 活動1次 ログ 1次ログが足らなければ 割り振られる オフライン・アー カイブ・ログ Systems Solution & Web Server Competence Center No.1 DM Group 解説:ログ運用のモード 循環ログ 活動ログのみで構成されるモードです。クラッシュ・リカバリーのためにログを使用することを目的にして います。ログに書き出される処理がコミットかロールバックされれば、その処理をそれ以後保管する必要がな いため、ログは再使用可能な状態になります。 通常は、1次ログが使用されますが、コミットなしで多量のINSERTなどが発生する処理が行われたために、 1次ログのみでは不足を生じた場合には、2次ログが割り振られます。ただし、2次ログの割り振りには負荷 がかかりますので、出来る限り1次ログで収まるようにログサイズおよび数を決定します。 ロ グの数は、DB構成パラメータのLOGPRIMARYおよびLOGSECONDで定義されます 保存ログ バックアップ・ファイルをリストアーした後に、ロールフォワード処理するためにログを保存しておくモー ドです。アーカイブ・ロギングとも呼ばれます。DB2 UDBでは、オンライン・バックアップ、テーブルスペース 単位のバックアップ、差分バックアップを使用する場合は、保存ログモードを選択する必要があります。保存 ログを設定することにより、オンライン・アーカイブ・ログとオフライン・アーカイブ・ログの2つのアーカ イブ・ログが使用可能な状態になります。保存ログモード時でも活動ログは、1次ログと、2次ログが存在 し、割り振られる1次、2次ログの数は、DB構成パラメータのLOGPRIMARYおよびLOGSECONDで定義されること は、循環ログと同じです 保存ログの設定方法 DB構成パラメータ(DB CFG)の (LOGRETAIN) = RECOVERY コマンド例:UPDATE DB CFG FOR Db名 USING LOGRETAIN ON GET DB CFG FOR DB名 で確認 DB構成パラメータ(DB CFG)の (USEREXIT) = ON のどちらかを設定します。(LOGRETAINがOFFでもUSEREXIT=ONならば保存ログモードになる) Systems Solution & Web Server Competence Center No.1 DM Group 9-10 活動2次 ログ ログに関するヒント ログは表スペース・コンテナーとは別のディスクに配置します 保存ロギングで運用する場合は、USEREXITプログラムを使用することを 検討します 活動ログはrawデバイスを使用することを検討します 活動ログは2重化することを検討します その他 LOGBUFSZ SOFTMAX LOGFILSIZ LOGPRIMARY LOGSECOND Systems Solution & Web Server Competence Center No.1 DM Group 解説:ログに関するヒント ログは表スペース・コンテナーとは別のディスクに配置します I/Oの競合をさけるために、ログと表スペースのコンテナーを別のディスクに配置することを検討 します。 保存ロギングで運用する場合は、USEREXITプログラムを使用することを検討します 手動でのオフラインアーカイブへの移動を行うのではなく、USEREXITの使用を検討します。 USEREXITは、サンプルプログラムが提供されており、簡単な修正にてすぐに使用可能です。 C言語でのサンプルは、sqllib/samples/c配下にdb2uext2.cdisk等にあります。 活動ログはrawデバイスを使用することを検討します ログの書き込みが早い HA(高可用性)構成時に切り替え処理が早い rawデバイスログでは、2次ログが使用できません 活動ログは2重化することを検討します ログの障害対応として2重化を検討します2重化は下記の2つの方法で実現できま す。 DISKのミラー機能(rawデバイスにログを定義し、DISKのミラー機能で2重化) DB2のデュアルロギング機能の利用(Winでは制約あり) Systems Solution & Web Server Competence Center No.1 DM Group 11-12 解説:ログに関するヒント その他 LOGBUFSZ ログ・レコードをディスクに書き込む前に使用するメモリーの大きさを指定し ます。この値を大きくすればログ・レコードをディスクに書き込む頻度を減ら すことができます。デフォルトは、8ページ(8×4KB)と小さいため、より大き な値を設定してください。(512程度の値をひとつの目安としてください) SOFTMAX 破損回復に必要なログ・ファイルの量が、ログ・ファイル・サイズ (LOGFILSIZ)に対してこのパラメーターで設定したパーセンテージ以上になる と、バッファー・プール上の変更された古いページがディスクに書き込まれま す。LOGFILSIZが大きい場合にはこの値を小さくすることを検討してください・ LOGFILSIZ 1次、2次Log fileのサイズ(4KB)。デフォルトは非常に小さな値のため大き くする必要があります。 LOGPRIMARY 作成する1次ログファイルの数、1次ログの容量は、LOGPRIMARY×LOGFILSIZに なります。 LOGSECOND 1次ログが一杯なった場合に割り振られる2次ログの数。基本は、1次ログで 収まるように1次ログを定義します。rawデバイスにログを取った場合には2次 ログは使用できません。 Systems Solution & Web Server Competence Center No.1 DM Group ブランク Systems Solution & Web Server Competence Center No.1 DM Group 13-14 バックアップ種類選択のための考慮点 夜間等に十分なDB2の停止時間が確保できるか (オンラインバックアップ or オフライン バックアップの判断) YES オフライン NO オンライン 最新の状態あるいは、ある特定 の業務途中までに戻す必要があ るか(ロールフォワードリカバリーの必要 性判断) NO ロールフォワード不要 YES ロールフォワード必要 バックアップ時間を少しでも短 縮したい。 NO インクリメンタルなし オフラインバックアップ + 循環ログ バックアップ時間を少しでも短 縮したい。 YES インクリメンタル使用 オフラインバックアップ + インクリメンタルバックアップ + 循環ログ バックアップ時間を少しでも短 縮したい。 (ロールフォワードリカバリーは使用 可能) NO YES インクリメンタル使用 インクリメンタル使用しない NO インクリメンタルなし オフラインバックアップ + インクリメンタルバックアップ + 保存ログ オフラインバックアップ + 保存ログ オンラインバックアップ + 保存ログ YES インクリメンタル使用 オンラインバックアップ + インクリメンタルバックアツプ + 保存゙ Systems Solution & Web Server Competence Center No.1 DM Group バックアップ種類選択のための考慮点 オフライン ログのモード 循環ログ 保存ログ DB単位 ○ ○ バックアップ TS単位 × ○ オンライン DB単位 × ○ Systems Solution & Web Server Competence Center No.1 DM Group 15-16 バックアップ TS単位 × ○ インクリメンタル DB単位 ○ ○ バックアップ TS単位 × ○ 解説:バックアップ種類選択のための考慮点 バックアップ種類の選択 バックアップ方法を選択するにあたり、連続運転のためなどによる、バックアップが取得される時間帯の制 約等より、バックアップの方法や種類を選択する場合と、リカバリー要件(どの時点までリカバリーしなけれ ばならないかや、リカバリーに必要とする時間)よりバックアップの方法や種類を選択する場合があると思い ます。連続運転をする必要がなく、夜間等に十分な停止時間が得られる場合には、オフライン・バックアップ を第一に候補として考えることができます。夜間等に十分な停止時間が得られない場合には、オンライン・ バックアップを検討します。また、応用編の方で紹介いたしますが、ESS等の磁気ディスクのフラッシュコピー を使用したバックアップは、データベースのミラー イメージを別の磁気ディスク上に取得することができる ため、365日24時間運転に限りなく近い運用が求められている大規模なデータベースに適用することが可 能です。 バックアップの種類 オフライン・バックアップは、DBに誰も接続していない状態でバックアップを取得します。オフラインか つ、DB単位のバックアップが、循環ログで使用できる唯一のバックアップ形態になります。循環ログで運用し ている場合は、リストアーは、DB単位のバックアップファイルを戻す、バージョン回復のみが可能になりま す。オフライン・バックアップであっても保存ログ運用をしている場合は、バージョン回復の後に、ロール フォワード・リカバリーを行い、最新あるいは、特定時点までの状態に戻すことが可能になります。 またテーブルスペース(TS)単位のバックアップ、リカバリーには、保存ログでの運用が必要です。保存 ログ運用であれば、DB単位でバックアップしていても、リストアーはテーブルスペース単位で戻ることが可 能です。 オンライン・バックアップには保存ログ運用が必要です。バックアップの単位は、DB単位、TS単位の両 方が利用できます。オンライン・バックアップをリストアーした場合は、必ずロールフォワード処理が必要で す。(WITHOUT ROLLING FORWARDを指定すると、「SQL2537 リストアー後のロールフォワードが必要です」が出 力) Systems Solution & Web Server Competence Center No.1 DM Group 解説:バックアップ種類選択のための考慮点 バックアップの種類(続き) インクリメンタル・バックアップは、DB2 UDB V7.2からサポートされた機能です。詳しくは、応用編にて説明 しまが、インクリメンタル・バックアップも、オンラインとオフラインの選択が可能です。また、DB単位、T S単位の選択も可能です。 Systems Solution & Web Server Competence Center No.1 DM Group 17-18 バックアップとリカバリー 例1 時間 1日 3日 2日 業務稼動 業務稼動 ログ1にロギングされた範囲 業務稼動 ログ2にロギングされた範囲 障 害 ログ2 活動 ログ1 アーカイブ オフライン バックアップ 2 オフライン バックアップ 1 要件:オフラインバックアップ2の 状態に戻したい リカバリー要件 夜間にDB2のオフラインバックアップを毎日取得しています。ログは保存ログで運用していますが、変更が あまり発生しない準マスターファイルに障害が発生したため、2日業務終了後に取得したオフラインバックアップ よりのバージョン回復(DB単位)を実施する必要が生じました。 Systems Solution & Web Server Competence Center No.1 DM Group 解説:バックアップとリカバリー 例1 毎日のオフラインバックアップの取得 夜間の停止時間帯にオフライン・バックアップを取得します コマンド例 backup database sample to c:¥db2backup 障害が発生したため、まず2日目のオフラインバックアップをリストアしてバージョン回復を行います。 このリストアー対象のタイムスタンプは、20010910113525としています。(バックアップ時に終了ログやコ ントロールセンターでもタイムスタンプを確認できます) コマンド例 restore database sample from db2backup taken at 20010910113525 without rolling forward RESTORE後は、without rolling forward 指定のため、DBのロールフォワード保留状態は解消されていま す。 確認は、 GET DB CFG FOR SAMPLE で可能 Systems Solution & Web Server Competence Center No.1 DM Group 19-20 バックアップとリカバリー 例2 2日 1日 業務稼動 3日 業務稼動 ログ1にロギングされた範囲 業務稼動 障 害 ログ2にロギングされた範囲 ログ2 活動 ログ1 アーカイブ オンライン バックアップ 2 オンライン バックアップ 1 要件:特定のTSのみ障害 直前の状態に戻したい リカバリー要件 業務は2時ー翌日1時45分までの23時間45分稼動であるため、業務稼動時間内に、DB2のオンライン・ バックアップ(DB単位)を取得しています。3日の夕方に障害が発生したため、障害対象のテーブルスペースの バックアップをリストアーした後に、ロールフォワード・リカバリーを行い、障害発生の直前の状態まで戻す必要が 生じました。 Systems Solution & Web Server Competence Center No.1 DM Group 解説:バックアップとリカバリー 例2 毎日のオフンインバックアップの取得 夜間の停止時間帯にオフライン・バックアップを取得します コマンド例 backup database sample online to c:¥db2backup 障害が発生したため、まず2日目のオンラインバックアップをリストアします。 このリストアー対象のタイムスタンプは、20010910113525としています。(バックアップ時に終了ログやコ ントロールセンターでもタイムスタンプを確認できます) コマンド例 restore database sample tablespace (userspace1) from db2backup taken at 20010910113525 RESTORE後は、TABLESPACEは ロールフォワード保留状態になっています。 確認は、 GET DB CFG FOR SAMPLE で可能 この場合、DBへのCONNECT(CONNECT TO SAMPLE)は可能ですが、ロールフォワード保留状態である USERSPACE1を使用したら、SQL0290N 表スペース・アクセスが許されていません SQLSTATE=55039 が出力されます。 Systems Solution & Web Server Competence Center No.1 DM Group 21-22 解説:バックアップとリカバリー 例2 次に最新の状態までログを使用してロールフォワード・リカバリーを実施します。 コマンド例 rollforward database sample to end of logs and stop tablespace (userspace1) 下記のようにロールフォワード完了が出力されたら、GET DB CFGおよびLIST TABLESPACESにてロールフォワード保 留状態が解除されたのを確認します。 Systems Solution & Web Server Competence Center No.1 DM Group ブランク Systems Solution & Web Server Competence Center No.1 DM Group 23-24 バックアップとリカバリー 例3 時間 1日 3日 2日 業務稼動 業務稼動 ログ1にロギングされた範囲 業務稼動 ログ2にロギングされた範囲 障 害 ログ2 活動 ログ1 アーカイブ オフライン バックアップ 1 オフライン バックアップ 1 要件:特定のTSのみ11時の 状態に戻したい リカバリー要件 夜間にDB2のDB単位のオフラインバックアップを毎日取得しています。ログは保存ログで運用しています。 特定テーブルスペースに障害が発生しました。該当テーブルスペースは、朝のバッチジョブでのみ更新されて いるため、3日朝11時丁度の状態までリカバリーできれば良いという結論になりました。DB単位ではなく、障害の 発生したテーブルスペース単位でのリカバリーの必要があります。 Systems Solution & Web Server Competence Center No.1 DM Group 解説:バックアップとリカバリー 例3 毎日のオフラインバックアップの取得 夜間の停止時間帯にオフライン・バックアップを取得します コマンド例 backup database sample to c:¥db2backup 障害が発生したため、まず2日目のオフラインバックアップをリストアします。 このリストアー対象のタイムスタンプは、20010910113525としています。(バックアップ時に終了ログやコ ントロールセンターでもタイムスタンプを確認できます) コマンド例 restore database sample tablespace (userspace1) from db2backup taken at 20010910113525 RESTORE後は、TABLESPACEは ロールフォワード保留状態になっています。 確認は、 GET DB CFG FOR SAMPLE で可能 保留 この場合、DBへのCONNECT(CONNECT TO SAMPLE)は可能ですが、ロールフォワード保留状態である USERSPACE1を使用したら、SQL0290N 表スペース・アクセスが許されていません SQLSTATE=55039 が出力されます。 ここでは、テーブルスペース単位のリストアを実施していますので、ロールフォワード回復が必ず 必要になります。 Systems Solution & Web Server Competence Center No.1 DM Group 25-26 解説:バックアップとリカバリー 例3 次に最新の状態までログを使用してロールフォワード・リカバリーを実施します。 コマンド例 : rollforward database sample to 2001-09-10-02.00.00.000000 and stop tablespace (userspace1) ここでの時間はGMT(日本標準時-9時間) 下記のようにロールフォワード完了が出力されたら、GET DB CFGにてロールフォワード保留状態が解除されたのを 確認します。 保留解除 Systems Solution & Web Server Competence Center No.1 DM Group 解説:バックアップとリカバリー 例3 ここで、対象表スペース中の表を使用すると、検索はできるものの、更新、削除、追加は、SQL0290N アク セスが許されていませんという結果になります。なぜなら、時間指定でロールフォワード・リカバリーした 場合は、バックアップ保留状態になるためです。バックアップ保留を解除するためには、対象表スペース、 あるいは、その表スペースが定義されているデータベースのバックアップを取得する必要があります。 テーブルスペースの状態は、LIST TABLESPACESコマンドで確認できます。(コントロールセンターでも可) リストア後 ロールフォワード後 Systems Solution & Web Server Competence Center No.1 DM Group 27-28 バックアップとリカバリー 良く見られるパターン 火 月 業務稼 動 業務稼 動 業務稼 動 オンライン バックアップ 2 木 水 オンライン バックアップ 5 日 業務稼 動 業務稼 動 業務稼 動 オンライン バックアップ 4 オンライン バックアップ 3 土 金 業務稼 動 オンライン バックアッフ 1 オンライン バックアップ 6 オフライン バックアップ 1 オフライン アーカイフログ゙ オフライン アーカイフログ゙ オフライン アーカイフログ゙ オフライン アーカイフログ゙ オフライン アーカイフログ゙ オフライン アーカイフログ゙ オフライン アーカイフログ゙ オフライン アーカイブロ グのコピー オフライン アーカイブロ グのコピー オフライン アーカイブロ グのコピー オフライン アーカイブロ グのコピー オフライン アーカイブロ グのコピー オフライン アーカイブロ グのコピー オフライン アーカイブロ グのコピー Systems Solution & Web Server Competence Center No.1 DM Group 解説:バックアップとリカバリー 良く見られるパターン オンラインバックアップ 平日の夜間は停止時間が短いため、オンライン・バックアップを取得します 週末など停止時間が長く取れる場合はオフラインバックアップ 全てをオンラインバックアップにて行うことも可能ですが、途中のログの消失などの安全性を考え、ロール フォワードの必要ない、オフラインバックアップを保険の意味で取得しておく場合が見られます。 アーカイブログの保管期間 論理的には最新のオンラインバックアップが始まる直前のアーカイブログ以降を保存しておくことですが、 これも保険の意味をこめて、最新のオフライン バックアップ以降のアーカイブログを保管しておく場合も 見られます。 DB2 UDB V7.2からは、ARCHIVEコマンドで明示的にアクティブログをクローズできるようになったため、 アーカイブログの保管対象を特定し易くなっています。 コマンド例 BACKUP DATABASE SAMPLE ONLINE TO /DB2BACKUP 時間指定のロールフォワード処理の注意 時間指定のロールフォワードの場合は、特にデータの整合性(UOWのコミットがどこで取られているか)は ユーザーの責任になります。 リカバリー後の注意 時間指定以外の場合ならバックアップ保留状態にはなりませんが、ここでも保険の意味をこめて、整合性を とるための一連のバックアップを取得しておくことをお勧めします。(時間の余裕があればオフラインに て) Systems Solution & Web Server Competence Center No.1 DM Group 29-30 DB2 UDB コントロールセンター コントロールセンターによる 統一管理 DB2 OS/390版も含めてWebコントロールセンターからも管理が可能 DB2 ユニバーサル・データベース 全体で同等な管理インターフェースが利用可能 Java Control Center DB2 UDB Server DB2 UDB EEE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DB2 for OS/390 コントロール・センター サテライト管理センター コマンド・センター スクリプト・センター アラート・センター ジャーナル ライセンス・センター インフォメーション・センター DB2 for OS/400 . . . . . . . . Systems Solution & Web Server Competence Center No.1 DM Group 解説:DB2 UDB コントロールセンター システム、インスタンス、データベース、およびデータベース・オブジェクト(表および表示など)を管理するには、コ ントロール・センターを使用します。コントロール・センターでは、システム、データベース、データベース・オブジェ クトをすべて表示し、それらに関する管理タスクを実行することができます。さらに、コントロール・センターから、 他のセンターおよびツールをオープンして、DB2 コマンド、ジョブ、およびスクリプトを処理したり、照会を最適化し たり、パフォーマンスをモニターしたりできます。 タスクには、以下のものがあります。 − データベース・オブジェクトを作成する −コントロール・センターでオブジェクトを表示する − 表と索引を内容表示域に表示する前にそれらを事前にフィルター処理する − オブジェクトを消去する − コントロール・センター・オブジェクトで管理タスクを実行する − 管理ツールおよびレプリケーション・タスク用のグローバル特性を設定する − DB2 ツールを遮断する − 内容表示域でオブジェクトを分類する − 内容表示域でオブジェクトをフィルターする − 内容表示域で列をカスタマイズする − 内容表示域でオブジェクトを検索する など また、コントロールセンターから、以下のGUIツールを起動できます。 コントロールセンター サテライト管理センター コマンド・センター スクリプト・センター アラート・センター ジャーナル ライセンス・センター インフォーメション・センター Systems Solution & Web Server Competence Center No.1 DM Group 31-32 コントロールセンター バックアップ指定画面 Systems Solution & Web Server Competence Center No.1 DM Group 解説:コントロールセンター バックアップ指定画面 コントロールセンターを使用してバックアップ対象の定義、実行が可能 直ぐにバックアップを実行する以外に、スケジュール設定もコントロールセンターから可能 時、日、週、月に1回の指定 曜日と時間指定 日と時間指定 スケジュール状況、実行状況、結果の確認もコントロールセンターからジャーナルを呼び出すことに より可能 Systems Solution & Web Server Competence Center No.1 DM Group 33-34 コントロールセンター リストア指定画面 Systems Solution & Web Server Competence Center No.1 DM Group 解説:コントロールセンター リストア指定画面 コントロールセンターを使用してリストア対象の定義、実行が可能 リストア対象は、コントロールセンターで、リストより選択して指定可能 ロールフォワード リカバリーの指定はオプション画面より可能 実行状況、結果の確認もコントロールセンターからジャーナルを呼び出すことにより可能 Systems Solution & Web Server Competence Center No.1 DM Group 35-36 インクリメンタル・バックアップ(バックアップ) 効果 バックアップするサイズが小さければ、それだけバックアップ中に読み込む データ量は減る フルバックアップを頻繁に取ったり、長いログの処理を行うことなく回復させる ことが可能 データベースと表スペースのインクリメンタル・バックアップが可能 サポートされるバックアップレベル 累積:最後のフルバックアップから変更されたデータのバックアップ デルタ (非累積):最後のフルバックアップまたはインクリメンタルバックアップ から変更されたデータのバックアップ 日曜日 月曜日 火曜日 水曜日 木曜日 金曜日 土曜日 日曜日 フル フル 累積バックアップ フル デルタ バックアツプ Systems Solution & Web Server Competence Center No.1 DM Group 解説:インクリメンタル・バックアップ(バックアップ) インクリメンタル バックアップのためのパラメータ データベース構成パラメータ(DB CFG)にてトラック変更ページ(TRACKMOD)パラメータをONにする update db cfg for xxxxdb using TRACKMOD yes TRACKMODをyesが有効になってから、最初はフルバックアップを取得する必要がある BACKUPコマンド BACKUPコマンドにINCREMENTALとDELTAのパラメータが追加 コマンド例 backup database sample incremental ¥db2bkup 累積バックアップ backup database sample incremental delta ¥db2bkup デルタバックアップ サポートされるモード オンラインとオフラインの両方のモードをサポート サポートされるバックアップ可能単位 データベースと表スペースのどちらの単位でも取得可能 Systems Solution & Web Server Competence Center No.1 DM Group 37-38 フル インクリメンタル・バックアップ(復元) 復元 フルの復元が必須 フルバックアップ 最新の累積バックアップ デルタバックアップ 失敗前のログファイル 復元(リストアー)が自動的に必要なバックアップ・イメージを要求 例. "restore database sample taken at <ts>" 最新のフルバックアップ;一週間の累積バックアップ;1つのデイリーデルタ 日曜日 フル 月曜日 火曜日 水曜日 デルタ デルタ デルタ 木曜日 金曜日 土曜日 累積 日曜日 デルタ フル 回復 + フル + 累積 + デルタ ログ Systems Solution & Web Server Competence Center No.1 DM Group 解説:インクリメンタル・バックアップ(復元) RESTOREコマンド RESTOREコマンドにINCREMENTALのパラメータが追加 コマンド例 restore database sample incremental automatic from /db2bkup taken at 20010801100101 automaticの指定により必要なバックアップを自動的に選択してリストア RESTORE後のROLLFORWARD RESTORE後のlogを適用してロールフォワード リカバリーを実施 コマンド例 rollforward database sample to 2001-08-01-11.01.01.000000 and stop 現在のインクリメンタル バックアップ対象と戻し順番の表示 DB2CKRSTコマンド コマンド例 Systems Solution & Web Server Competence Center No.1 DM Group 39-40 バックアップとリカバリー 例4 2日 1日 業務稼動 3日 業務稼動 ログ1にロギングされた範囲 業務稼動 障 害 ログ2にロギングされた範囲 ログ2 活動 ログ1 アーカイブ オンライン バックアップ 1 差分バック アップ 要件:特定のTSのみ障害 直前の状態に戻したい リカバリー要件 週始めにオンライン・バックアップ(DB単位)で取得、その後は日次で増分バックアップをオンラインで取得 している。3日目の夕方に障害が発生したため、対象テーブルスペース(usespace1)のみを障害発生の直前の 状態に戻したい Systems Solution & Web Server Competence Center No.1 DM Group 解説:バックアップとリカバリー 例4 週初めのオンラインバックアップの取得 オンライン・バックアップを取得します コマンド例: backup database sample online to c:¥db2backup 以後、日次で増分バックアップをオンラインで取得 差分バックアップの取得 コマンド例: backup database sample online incremental to c:¥db2backup リストア順序の確認(automatic指定で実施する場合は特に必要なし) 最新の増分バックアップは、20010910175818とする コマンド例:db2ckrst -d sample -r tablespace -n userspace1 -t 20010910175818 -r tablespace Systems Solution & Web Server Competence Center No.1 DM Group 41-42 解説:バックアップとリカバリー 例4 automatic指定によるリストア コマンド例:restore database sample tablespace (userspace1) incremental automatic from c:¥db2backup taken at 20010910191003; ロールフォワードで最新までリカバリー コマンド例:rollforward database sample to end of logs and stop Systems Solution & Web Server Competence Center No.1 DM Group ブランク Systems Solution & Web Server Competence Center No.1 DM Group 43-44 TABLESPACE (USERSPACE1); I/O Suspend, Split/Mirror オンライン Split Mirror プライマリー(稼動中)データベースでOLTPを継続しながらデータベースの整合性の あるミラーを分割する パフォーマンス低下はあり 分割したデータベースを一貫性を保ちながら回復可能 ミラーイメージからバックアップとシステムコピーをとることが可能 Disk Mirror DB2 Tables DB2 Tables Systems Solution & Web Server Competence Center No.1 DM Group I/O Suspend, Split/Mirror cloneデータベース db2 set write suspend 本番 データ ベース db2inidb as snapshot バックアップコピー mirror (バックアップ復 元専用) db2inidb as standby db2 set write resume mirrorからの 復元 rollforward専用 データベース 復元コ ピー db2start db2inidb as mirror db2 rollforawd 回復した本番 データベース Systems Solution & Web Server Competence Center No.1 DM Group 45-46 解説:I/O Suspend, Split/Mirror データベースの分割を行った時は、 db2inidb ユーティリティーを必ず実行して、 データベースの使い方の意図を示す必要がある。 mirror mirrorされたコピは元のデータベースを置き換えるのに使用可能。データベースはロール フォワード保留状態になり、 WRITE SUSPEND 状態は解除される db2inidb <db_name> as mirror snapshot クラッシュ・リカバリーが終了して、データベースが一貫性のある状態(新しいログ・チェー ンが始まる) db2inidb <db_name> as snapshot 元のデータベースのいかなるログからもロールフォワードできない この時点で、データベースはバックアップを含むすべての作業を行うことができる standby データベースをロールフォワード保留状態においておく db2inidb <db_name> as standby standbyと mirrorではクラッシュ・リカバリーは実行されない。 データベースは不整合な状 態で、実行途中のトランザクションは未解決のまま データベースおよび表スペースのオフライン・バックアップは実行可能 分割されたDBイメージのログではなく、プライマリーDBのログが使われることが 必要 EEE構成においては分割DBイメージがアクセス可能になる前に、全ノード上で ツールを稼動させる必要がある Systems Solution & Web Server Competence Center No.1 DM Group ブランク Systems Solution & Web Server Competence Center No.1 DM Group 47-48 リストアでのコンテナの変更 Redirect Restore Restore時に表スペース コンテナーの追加・変更・削除が必要になったとき 例えば、コンテナーのディレクトリーがフルになり容量の大きな別ディレクトリーに 移動したい場合、あるいは、別のコンテナーを追加したい場合 SMS表スペースでもコンテナを増やせる(DMSなら動的追加が可能だがSMSは不可) DMS表スペースのコンテナとDEVICEの変更 例:SMS表スペース(USERSPACE1)をコンテナー¥hasetst1db¥userから ¥hasetst2dbにRedirect タイムスタンプ20010911200235のバックアップをredirect指定でリストア コマンド: restore database HASETST1 tablespace (userspace1) from c:¥hasetst1bk taken at 20010911200235 redirect ; SET TABLESPACEコマンドでコンテナパスの変更 コマンド:set tablespace containers for 2 using (path 'c:¥hasetst2db') ; Redirect復元の完了操作 restore database HASETST1 continue; (最初にテーブルスペース指定してもここではDB指定のみ) Redirect復元完了時点では、表スペースはロールフォワード保留状態のためロールフォ ワード処理が必要です。(Redirect処理は保存ログで行う必要があります) Systems Solution & Web Server Competence Center No.1 DM Group リストアでのコンテナの変更 コマンド実行例 コンテナー変更の確認(list tablespace containers for 2) Systems Solution & Web Server Competence Center No.1 DM Group 49-50