3.1.4 システムログファイルの状態の変わり方
HiRDBの稼働時,次に示すようにシステムログファイルの状態が変わります。なお,ここではHiRDB Staticizer Optionの更新可能なオンライン再編成を使用していないとします。したがって,システムログファイルの状態にオンライン再編成上書き可能状態及びオンライン再編成上書き禁止状態はでてきません。更新可能なオンライン再編成中のシステムログファイルの状態については,マニュアル「インナレプリカ機能 HiRDB Staticizer Option」を参照してください。
- 〈この項の構成〉
(1) HiRDBを正常開始します
HiRDBを正常開始すると,pdlogadfg -d sysオペランドで指定したシステムログファイルのうち,ONLと指定したファイルがすべてオープンされます。オープンされたファイルのうち,最初に指定したファイルが現用となります。そのほかはスワップ先にできる状態になります。オープン処理に失敗したファイル,及びONLと指定しなかったファイルは予約の状態になります。なお,HiRDBを再開始した場合は前回稼働時の現用ファイルが引き継がれます。
(2) システムログファイルがスワップするとファイルの状態が変わります
現用ファイルが一杯になると,スワップ先にできる状態のファイルに出力先が変わります(システムログファイルがスワップします)。ファイルの状態は次のように変わります。
(3) シンクポイントダンプが有効化されるとファイルの状態が変わります
システムログファイルがスワップすると,HiRDBはシンクポイントダンプの有効化処理を実施します。シンクポイントダンプが有効化されると,シンクポイントダンプ有効化以前に取得されたシステムログは,HiRDBの再開始のときに不要になります。ファイルに格納されているすべてのシステムログが不要になると,そのファイルは上書きできない状態から,上書きできる状態に変わります。
なお,実行中のトランザクションがあると,そのトランザクションが終了するまで,シンクポイントダンプは有効化されません。次に示すような長時間掛かるトランザクションの実行中は,そのトランザクションが終了するまでシンクポイントダンプが有効化されないため,ほかのトランザクションとの同時実行を避けてください。
-
表への行挿入(INSERT),データ更新(UPDATE),又は行削除(DELETE)などの更新系SQLを実行してからコミットまでの時間が長いトランザクション
-
大量のデータを対象としたデータベース作成ユティリティ(pdload),データベース再編成ユティリティ(pdrorg),又は空きページ解放ユティリティ(pdreclaim)を実行するトランザクション
-
大量のデータが格納されている表に対するCREATE INDEXを実行するトランザクション
(4) システムログをアンロードするか,又はシステムログファイルを解放するとファイルの状態が変わります
ここで説明する操作はHiRDB管理者が行います。
アンロード待ち状態のファイルに格納されているシステムログをアンロードすると,そのファイルはアンロード待ち状態からアンロード済み状態に変わります。ここでアンロードしたシステムログは,データベースを回復するときに使用されます。
アンロードレスシステムログ運用をする場合は,pdlogchg -zコマンドでシステムログファイルを解放すると,ファイルの状態がアンロード待ち状態からアンロード済み状態に変わります。
(5) 抽出側HiRDB Datareplicatorがシステムログの抽出を完了するとファイルの状態が変わります
抽出側HiRDB Datareplicatorがシステムログの抽出を完了すると,ファイルの状態が抽出未完了状態から抽出完了状態に変わります。
- 注意事項
-
HiRDBではシンクポイントダンプを取得するときに,抽出状態を確認します。つまり,抽出側HiRDB Datareplicatorがシステムログを完全に読み出した後,次のシンクポイントで抽出完了状態になります。
(6) これでファイルの状態がスワップ先にできる状態になります
ファイルの状態が次に示す状態になったため,スワップ先にできない状態からスワップ先にできる状態に変わります。
-
上書きできる状態
-
アンロード済み状態
-
抽出完了状態
HiRDB管理者は,このようにスワップ先にできる状態のファイルを常に作るようにシステムログファイルを運用してください。