IMS データベースのバックワード回復およびフォワード回復において使用されるトランザクション ログ ファイル (TLOG) について説明します。
TLOG ファイルのプロパティ
以下の環境変数を使用して、TLOG ファイルのプロパティを指定します。
- ES_IMS_DB_TLOG_WRITETHRU
- 0 (ゼロ) に設定すると、TLOG バッファーからディスクへのフラッシュが COMMIT 時にのみ強制されます (デフォルト)。1 に設定すると、TLOG バッファーからディスクへのフラッシュがすべてのデータベース I/O 時に強制されます。
- ES_IMS_TLOG_PATH
- IMS DB トランザクション ロギング ファイルの場所。デフォルトは Enterprise Server システム ディレクトリです。
注: ログ ファイルは、作成した後、移動はできますが名前の変更はできません。データベースを回復する前に、すべてのログ ファイルを ES_IMS_TLOG_PATH で指定したディレクトリに入れる必要があります。
- ES_IMS_TLOG_COMPRESS
- 0 (ゼロ) に設定すると、バックワード回復 TLOG ファイルの圧縮が無効になります。圧縮されない場合、このファイルにはデータベースの回復に必要な情報のみが含まれます。デフォルトは有効です。
注: 有効な場合、
Enterprise Server は情報が古くなった際にファイル内のスペースを解放します。
- ES_IMS_TLOG_FLUSH
-
1 に設定すると、TLOG およびデータベース バッファーからディスクへの頻繁なフラッシュが強制されます。
警告: データベース更新の回数、コミットの頻度、その他のコンピューター活動によっては、ES_IMS_TLOG_FLUSH を使用するとパフォーマンスが大幅に低下する可能性があります。
注: この環境変数は非推奨です。TLOG バッファーをフラッシュするには ES_IMS_DB_TLOG_WRITETHRU を、データベース バッファーをフラッシュするには ES_IMS_DB_COMMIT_FLUSH を使用してください。
- ES_IMS_TLOG_MAXSIZE
- IMS DB トランザクション ロギング ファイルの最大サイズ (バイト単位)。デフォルトは 4 GB または h"FFF00000" です。
- ES_IMS_TLOG_THRESHOLD
- IMS DB トランザクション ロギング ファイルのしきい値サイズ。このサイズに達すると、現在の TLOG ファイルが閉じて、新しい TLOG ファイルが後続のトランザクション用に作成されます。デフォルトは 2 GB または h"7FFFFFFF" です。
データベースの回復に使用される TLOG ファイル
IMS データベースの回復に使用される実際の TLOG ファイルは、フォワード回復が有効か無効かによって異なります。
- フォワード回復が有効である場合
- フォワード回復とバックワード回復の両方で、最新のフォワード回復 TLOG ファイルが使用されます。
注: フォワード回復が有効な際に作成された TLOG ファイルは、上書きされることがないためバックアップされません。
- フォワード回復が無効である場合
- バックワード回復では、デフォルト ログ ファイル IMSDB.TLOG が使用されます。デフォルト ログ ファイルは、新しいものが作成される場合は必ずバックアップされます。
TLOG 命名規則
フォワード回復が無効な場合に作成および使用される IMSDB.TLOG ファイルを例外として、Enterprise Server はこの命名規則を使用して TLOG ファイルを生成および名前変更します。
serverName-YYMMDDhhmmssmm.TLOG
serverName はデータベースが保存されているサーバーの名前であり、yymmddhhiisscc の各 2 桁はそれぞれ年、月、日、時、分、秒、マイクロ秒を示します。
データベースのサイズおよびトランザクションの量によっては、回復ログ ファイルのサイズは非常に大きくなる可能性があります。大量のログを適切に管理するために、Enterprise Server では、拡張ログが作成されることがあります。拡張ログ ファイルは、元のログ ファイルに 001、002 などの拡張番号を付加した名前になります。
回復プロセス中、Enterprise Server はログ ファイル タイム スタンプを使用して復元に必要なログ ファイルを判定し、回復から古いログ ファイルを除外します。これにより、回復の完了に要する時間が最小限に抑えられます。
TLOG ファイルの内容
TLOG ファイルの内容は、次のように cobfhtlog ユーティリティを使用して表示できます。
- Enterprise Developer コマンド プロンプトを起動します。手順については、「Enterprise Developer コマンド プロンプトを起動するには」を参照してください。
- ES_IMS_TLOG_PATH 環境変数で指定したディレクトリに移動します。
- 次のように入力します。
cobfhtlog filename
filename は、TLOG ファイルの名前です。
ファイルの内容が画面に出力されます。次の例は、TLOG ファイルの内容のスニペットを示しています。
rollfwd data
data len: 00019
data : 100000006 00000006
…..
commit prep
session: 0000000002
sequence no: 00000000000000000006
date time: 17081415252517
…..
commit begun
session: 0000000002
sequence no: 00000000000000000007
date time: 17081415252523
…..
commit comp
session: 0000000002
sequence no: 00000000000000000008
date time: 17081415252523
注: 上の例で、
commit comp の
date time 値は、回復ユーティリティおよび Recover 関数の PITR パラメーターで使用できる時点を表しています。詳細については、「
Recover 関数」および「
回復ユーティリティ」を参照してください。