このトピックでは、すべてのオブジェクト・タイプのジャーナル処理を開始する方法について説明していま す。
ジャーナルおよびジャーナル・レシーバーを作成した後、ジャーナル処理を開始することができます。オブ ジェクトのジャーナル処理が始まると、システムはオブジェクトのすべての変更内容を示すジャーナル項目 を書き込みます。
ジャーナル開始コマンドは、オブジェクトに対する排他ロックを獲得しなければなりません。 ただし、デ ータベース物理ファイルおよび統合ファイル・システム・オブジェクトに関しては、オブジェクトがオープ ンしていてもジャーナル処理を開始できます。ジャーナル処理を開始するために推奨される手順は、次のと おりです。
1. オブジェクトのジャーナル処理を開始する。
2. オブジェクトを保管する。オブジェクトがすでにオープンされて変更中である場合には、活動時保管タ イプの保管を行います。
活動時保管機能を使用していない場合は、オブジェクトを保管するときにオブジェクトのヒストリーを更新 して、ジャーナル処理済み変更の適用処理と除去処理での検査に最適情報を使用できるようにすることを強 くお勧めします。オブジェクトの保管に SAV コマンドを使用した場合、デフォルト値では、ヒストリーの 更新を保存しません。 したがって、UPDHST 値を *NO 以外の値に変更してください。
これ以外の保管関連コマンドでは、デフォルト値で更新ヒストリーを保存するようになっています。活動時 保管機能を使用する場合、ジャーナル処理済み変更を適用または除去するときに、検査のためにオブジェク トのヒストリーを更新する必要はありません。この場合、情報は、このオブジェクトを含むメディアに保管 され、オブジェクトを復元するときに復元されます。この追加の情報は、ジャーナル処理済み変更の適用ま たは除去に関する最後の保管情報を提供します。
通常は、データ待ち行列の定義のみが保管され、データ待ち行列の内容は保管されません。データ待ち行列 の内容も保管するには、保管コマンドに QDTA(*DTAQ) を指定する必要があります。
1 つのジャーナルに関連付けることができるオブジェクトの最大数は、250 000 または 10 000 000 です。
ジャーナル・オブジェクトの限度を 10 000 000 に設定すると、管理するジャーナルの数が少ないためにジ ャーナル処理が単純化されます。ただし、IPL の実行時および災害時回復の際には並列処理が削減されま す。サブディレクトリー内で作成されたすべてのオブジェクトについて、250 000 の限度に達したときに中 断せずに、自動的にジャーナル処理を開始させることもできます。値 *MAX10M は、レシーバー・サイ ズ・オプション (RCVSIZOPT) パラメーターに、*MAXOPT 値の 1 つが指定されている場合、あるいは RCVSIZOPT が *SYSDFT である場合に、ジャーナル・オブジェクトの限度 (JRNOBJLMT) パラメーター に対してのみ指定できます。
以下のリンクでは、各オブジェクト・タイプのジャーナル処理の開始について説明します。
ライブラリーのジャーナル処理:
ライブラリーに対する変更のジャーナル処理を開始したり、ライブラリーに作成、移動、または復元された オブジェクトを自動的にジャーナル処理することができます。
ライブラリー・ジャーナル処理機能を使用可能にするには、ジャーナル・ライブラリーの始動
(STRJRNLIB) コマンドを使用します。STRJRNLIB は特定のジャーナルに対するジャーナル処理の変更 (ラ イブラリーまたはライブラリーのリストに加えられた) を開始し、オプションとしてライブラリーあるいは ライブラリーのリスト内のオブジェクトに対する変更のジャーナル処理を開始します。IBM Navigator for i を使用してライブラリーに対してジャーナル処理を開始するには、以下のステップを実行します。
1. Navigator for i で、ジャーナル処理したいライブラリーを含むシステムに接続します。
2. 「ファイル・システム」を展開します。
3. 「統合ファイル・システム」を選択します。
4. 「QSYS.LIB」を選択します。
5. ジャーナル処理したいライブラリーを選択し、「ジャーナル処理」アクションを選択します。
オブジェクトに対してジャーナル処理を開始したら、ジャーナル処理されたオブジェクトを保管してそのジ ャーナル属性情報を維持します。また、例えばジャーナル処理が有効になる前にジャーナル処理された変更 を、保管済みのバージョンのオブジェクトに適用できないため、オブジェクトを保管しておく必要がありま す。
ジャーナル処理に適格なオブジェクトがライブラリーの中に作成、移動、および復元されると、オブジェク トは、そのライブラリーと同じジャーナルに対して自動的にジャーナル処理を開始することができます。ど のオブジェクトがライブラリーのジャーナル状態を継承するか、およびどのジャーナル処理属性を使用して ジャーナル処理を開始するかは、ライブラリーの継承ジャーナル処理属性によって決定できます。継承規則 により、ライブラリーに追加されるオブジェクトの名前に基づいて、オブジェクトはライブラリーのジャー ナル状態を継承することができます。指定された文字で始まる名前を持つオブジェクトを選択してジャーナ ル処理を開始したり、ジャーナル処理の開始から省略したりすることができます。この機能を使用すると、
実動ライブラリーで作成された作業ファイルが、ジャーナル処理を開始しないようにすることができ、一 方、実動ファイルは引き続きジャーナル処理を開始することができます。
ライブラリー・ジャーナル処理の使用可能化の詳細については、ジャーナル・ライブラリーの始動 (STRJRNLIB) を参照してください。
データベース物理ファイル (テーブル) のジャーナル処理:
物理ファイル (テーブル) のジャーナル処理を開始するとき、変更後イメージを保管するか、変更前イメー ジと変更後イメージの両方を保管するかを指定します。
ジャーナル項目の数を減らすために、ファイルのオープン操作およびクローズ操作の項目を除去することが できます。 オープン項目とクローズ項目をジャーナル処理から除去するには、IBM Navigator for i で「オ ープンおよびクローズ項目の除外」を選択します。または、物理ファイル・ジャーナルの開始 (STRJRNPF) コマンドに OMTJRNE(*OPNCLO) を指定できます。オープン・ジャーナル項目およびクローズ・ジャーナル項 目を除去することを選んだ場合、次のことを知っておいてください。
v 誰がそのファイルにアクセスしたかを監査するためにそのジャーナルを使用することはできません。
v TOJOBO および TOJOBC パラメーターを使用して、オープン境界およびクローズ境界にジャーナル変
更を適用したり、変更を除去することはできません。
物理データベース・ファイルに対してジャーナル処理を開始するには、以下のステップを実行します。
1. Navigator for i で、ジャーナル処理したいオブジェクトを含むシステムに接続します。
2. 「データベース」を展開します。
3. 「データベース・タスクで使用するデータベース/スキーマの設定 (Set Database/Schema to use with Database Tasks)」をクリックし、ジャーナル処理したいオブジェクトを含むデータベースとスキーマを 設定します。
4. 「テーブル」をクリックします。
5. ジャーナル処理したいテーブルを選択し、「ジャーナル処理」アクションを選択します。
また、STRJRNPF コマンドを使用して、物理データベース・ファイルのジャーナル処理を開始することも できます。
関連概念:
25ページの『変更前イメージをジャーナル処理する理由』
オブジェクトをジャーナル処理すると、システムはすべての変更に関する変更後イメージを常に書き込みま す。 また、データベース・ファイルおよびデータ域の変更前イメージ・ジャーナル項目をシステムが書き 込むように要求することもできます。 それ以外のすべてのオブジェクト・タイプは、変更後イメージのみ をジャーナル処理します。 これにより、ジャーナル処理の補助記憶装置所要量はかなり増加します。
関連資料:
物理ファイルのジャーナルの開始 (STRJRNPF) コマンド 関連情報:
DB2 Universal Database
DB2 マルチシステム・ファイルのジャーナル処理:
分散ファイルに関するジャーナル処理を正常に開始すると、システムは、ノード・グループ内の他のサーバ ーに対してジャーナル開始要求を配布します。
いずれかのサーバーに異常があっても、すべてのサーバーで試行されます。ノード・グループ内のサーバー でジャーナル処理がいったん始まると、他のサーバーになんらかの異常があっても開始処理は続けられま す。
ジャーナルの名前は、ノード・グループ内のすべてのサーバーで同じでなければなりません。ジャーナル自 体が配布されることはなく、物理ファイル・ジャーナルの開始 (STRJRNPF) コマンドだけが配布されま す。
ジャーナルとそのレシーバーは、1 つのサーバー上のファイルに加えられた変更内容だけと関連付けられま す。ノード・グループ内で 2 つのサーバーがある場合、その両方のサーバーでファイルが更新されると、
サーバー A での更新はサーバー A のジャーナルとレシーバー内だけで行われ、システム B での更新は システム B のジャーナルとレシーバー内だけで行われます。
ジャーナル ID (JID) は各分散ファイルごとに異なります。各サーバーは独自の JID を持っています。つ まり、あるサーバーに記録されたジャーナル項目を使用して、別のサーバー上の異なるファイルにジャーナ ル処理済み変更を適用または除去することはできません。
関連概念:
分散データベース管理 関連資料:
物理ファイルのジャーナルの開始 (STRJRNPF) コマンド 論理ファイルのジャーナル処理:
システムは、必要であることが判明すると、ジャーナル処理された物理ファイルに基づいて作成された論理 ファイルのジャーナル処理を自動的に開始します。これは、隠れジャーナル処理と呼ばれます。その結果、
論理ファイルに対する権限変更のような内容を記録するジャーナル項目が作成されます。論理ファイルに関 連付けられているアクセス・パスは、隠れジャーナル処理されることはありません。
隠れジャーナル処理された論理ファイルは、ジャーナルに対してジャーナル処理されたオブジェクトを表示 するときに、ジャーナル処理済みオブジェクトとして表示されます。また、オブジェクト記述の表示
(DSPOBJD) コマンドや、同じような情報を戻すその他のインターフェースを使用する場合は、ジャーナル
処理中として報告されます。
基礎になっている物理ファイルがジャーナル処理を終了すると、その物理ファイルに基づいて作成された論 理ファイルの隠れジャーナル処理も終了します。
統合ファイル・システム・オブジェクトのジャーナル処理:
ルート (/)、QOpenSys、およびユーザー定義ファイル・システムに存在する統合ファイル・システム・オブ
ジェクトを、ジャーナル処理することができます。
次の統合ファイル・システム・オブジェクトをジャーナル処理できます。