スケーラブルデータベースサーバ HiRDB ファーストステップガイド(Windows(R)用)

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

4.3.1 基礎知識

データベースの障害が発生したとき,障害発生前の最新の状態に回復するためにはバックアップデータ以外にシステムログファイルが必要になります。このシステムログの運用によって,データベースをどの時点まで回復できるか,バックアップをどのように取得するかなどが異なります。

<この項の構成>
(1) システムログとは
(2) システムログの運用の種類
(3) システムログをアンロードする運用
(4) システムログのアンロード手順
(5) 演習を始める前に

(1) システムログとは

システムログとは,一般的にはジャーナルとも呼ばれているデータベースの更新履歴情報のことです。HiRDBはこのシステムログを次に示す目的のためにシステムログファイルに取得しています。

(a) HiRDBまたはUAPが異常終了した場合にHiRDBがデータベースを回復するときの入力情報になります

HiRDBまたはUAPが異常終了すると,実行中のUAPが更新したデータベースの内容をロールバックする必要が生じます。この処理はHiRDBが行います。このときの入力情報がシステムログとなります。

(b) pdrstrコマンド(データベース回復ユティリティ)の入力情報になります

システムログにはデータベースの更新履歴情報が格納されているので,データベースに障害が発生したときでも,バックアップファイルとそのバックアップを取得した時点以降の更新履歴を利用して,データベースを最新の状態に回復できます。

ディスク障害など,データベースを回復する必要が生じた場合,pdrstrコマンドでデータベースを回復します。このとき,次に示す入力情報が必要になります。

注※
バックアップ取得時点に回復する場合は必要ありません。また,バックアップ取得時のオプションによっては,使えないことがあります。

 

アンロードログファイル
アンロードログファイルは,システムログをアンロードすることで作成することができます。システムログのアンロードは,pdlogunldコマンドログ関係ファイルのアンロード)で行います。
アンロードログファイルを使用すると,データベースに障害が発生したときに,RDエリアごとに障害を回復することができます。システムログファイルを使用したデータベースの回復では,システム全体の回復しかできません。
このアンロードログファイルはシステムログをアンロードして作成します。システムログとデータベース回復の関係を図4-1に示します。

図4-1 システムログとデータベース回復の関係

[図データ]
〔説明〕
  1. HiRDBがシステムログファイルにシステムログを出力します。
  2. pdlogunldコマンドで,システムログをアンロードします。
  3. pdrstrコマンド(データベース回復ユティリティ)でデータベースを回復します。

(2) システムログの運用の種類

システムログの運用の種類には,表4-3に示す方法があります。このマニュアルでは,運用方法が最も単純なアンロード状態のチェックを解除する運用でHiRDBを運用します。「2.3.1 作成する環境」で紹介した自動ログアンロード機能は,システムログをアンロードする運用でHiRDBを運用する場合に利用できます。それぞれの運用方法の詳細については,「HiRDB Version 7 システム運用ガイド(Windows(R)用)」を参照してください。

表4-3 システムログの運用の種類

運用の種類 運用方法 データベースの回復方法 利点
システムログをアンロードする運用
  • アンロード待ち状態のシステムログをアンロードします。

  • バックアップおよびアンロードログファイルを入力情報にしてデータベースを回復します。
  • データベースは,バックアップ取得時点,およびバックアップ取得時点以降の任意の同期点に回復できます。

  • データベースを最新の状態に回復できます。
  • RDエリア単位でデータベースを回復できます。
  • システムログのアンロードを自動化できます。
アンロードレスシステムログ運用
  • アンロード待ち状態のシステムログを解放します(アンロードする必要はありません)。
  • サーバ単位にバックアップを取得する必要があります。

  • バックアップおよびバックアップ取得以降のシステムログを入力情報にしてデータベースを回復します。
  • データベースは,バックアップ取得時点,およびバックアップ取得時点以降の任意の同期点に回復できます。

  • システムログのアンロード操作がなくなるため,CPUおよび入出力の負荷を削減でき,HiRDB管理者の運用が簡単になります。
  • アンロードログファイルを保管するためのディスク容量が必要なくなります。
アンロード状態のチェックを解除する運用
  • システムログをアンロードする必要はありません。

  • バックアップを入力情報にしてデータベースを回復します。
  • データベースは,バックアップ取得時点にしか回復できません。

  • システムログファイルのアンロード操作または解放操作がなくなるため,運用が簡単になります。
  • アンロードログファイルを保管するためのファイル容量が必要なくなります。

この節には,システムログをアンロードする運用の場合の演習を記載しています。このマニュアルではアンロード状態のチェックを解除する運用を利用しているので,この演習は実行する必要はありません

(3) システムログをアンロードする運用

システムログをアンロードする運用の場合,(1)の(b)で説明したように,データベースの障害に備えてアンロードログファイルを保管しておく必要があります。

(a) アンロード待ち状態」のファイルをアンロードします

システムログが出力されているファイルを「現用」ファイルといいます。この「現用」ファイルの容量いっぱいにシステムログが出力されると,システムログの出力先がほかのシステムログファイルに変更されます。これをシステムログファイルのスワップといいます。

「現用」であったファイルは「アンロード待ち状態」のファイルとなります。HiRDB管理者は,この「アンロード待ち状態」のファイルをpdlogunldコマンドでアンロードします。

システムログファイルの状態変化を図4-2に示します。

図4-2 システムログファイルの状態変化

[図データ]

システムログファイルの状態は,pdloglsコマンドで確認できます。pdlogls出力例を次に示します。

[図データ]

〔説明〕
  • 3カラム目が「u」になっているファイル(log1)が,「アンロード待ち状態」のファイルです。
  • 2カラム目が「c」になっているファイル(log2)が,「現用」のファイルです。
(b) アンロードをしないとHiRDBが異常終了します

「アンロード待ち状態」のファイルにはシステムログを出力できません。全システムログファイルが「アンロード待ち状態」になると,システムログが出力できなくなり,HiRDBが異常終了します。したがって,システムログのアンロードは忘れずに実行してください。

(c) 自動ログアンロード機能

システムログをアンロードする運用では,pdlogunldコマンドでアンロード待ち状態のシステムログファイルをアンロードする必要があります。この作業を忘れるとスワップ先にできる状態のシステムログファイルがなくなり,HiRDBが異常終了します。これを回避するための機能として,自動ログアンロード機能があります。自動ログアンロード機能を使うと,システムログファイルのアンロード作業をHiRDBが自動的に行います。アンロード作業が頻繁に発生する場合は,システムログのアンロード作業の自動化を検討してください。

HiRDBが自動的に作成するアンロードログファイルの名称には次に示すような規則があり,アンロードされた順序がわかるようになっています。したがって,バックアップ取得時の最新のアンロードログファイルを調べておくと,データベースの回復時にはそれ以降に作成されたアンロードログファイルを使うことでデータベースを最新の状態に回復できます。

名称規則
サーバ名_サーバランIDと世代番号_ファイルグループ名称
 

(例)
 
sds01_404d793d0001_log1 ←バックアップ直前にアンロードしたファイル
sds01_404d793d0002_log2
sds01_404d793d0003_log3
sds01_404d793d0004_log4
 

 

通常は,サーバを停止するときはバックアップを取得するときなので,サーバランIDが異なる複数のアンロードログファイルがデータベースの回復に必要になることはありません。バックアップ取得時に,次にアンロードされる予定のアンロードログファイル名を調べておけば,世代番号に注目することでバックアップ取得以降に作成されたアンロードログファイルを把握することができます。

上記の例の場合,「sds01_404d793d0001_log1」がバックアップ直前にアンロードしたファイルとすると,取得したバックアップを使ってデータベースを回復するには,「sds01_404d793d0002_log2」以降の三つのファイルが必要になります。

自動ログアンロード機能の詳細については,マニュアル「HiRDB Version 7 システム運用ガイド(Windows(R)用)」を参照してください。

(d) アンロードログファイルの格納場所

このあとに行う演習ではアンロードログファイルをデータベースと同じディスクに格納していますが,本番のシステムではアンロードログファイルをデータベースと異なるディスクに格納してください。同じディスクに格納すると,そのディスクに障害が発生した場合,データベースを回復できなくなります。

(4) システムログのアンロード手順

システムログをアンロードする手順を図4-3に示します。

図4-3 システムログをアンロードする手順

[図データ]

(5) 演習を始める前に

「アンロード待ち状態」のファイルがない場合は,pdlogswapコマンドでシステムログファイルをスワップさせて,「アンロード待ち状態」のファイルを作成してください。

 
C:\>pdlogswap -d sys