基本的なジャーナリング操作
ここでは、ジャーナリングに関連する基本的なタスクについて説明します。
ジャーナリングの開始
ジャーナリングが停止しているときは、^JRNSTART ルーチンを使用するか、または ^JOURNAL ルーチン・メニューからオプション 1 の [ジャーナリングの開始] を選択して、ジャーナリングを開始できます。詳細は、"^JRNSTART を使用したジャーナリングの開始" を参照してください。
管理ポータルからジャーナリングは開始できません。
ジャーナリングを開始すると、監査が有効になっている場合は InterSystems IRIS® データ・プラットフォームによって変更に対する監査が実行されます。
ジャーナリングの停止
システム全体のジャーナリングを停止すると、"ジャーナルの [エラー時に凍結] 設定が [いいえ] の場合" で説明するように、多くの望ましくない結果が発生します。
ジャーナルを停止すると、トランザクション処理も中断します。ジャーナリングを停止したときにトランザクションが進行中の場合、ジャーナルには不完全なトランザクションが格納されます。この問題を避けるため、ジャーナルを停止する前に、すべてのユーザがシステムから切断されていることを確認してください。
ジャーナリングを停止した状態で InterSystems IRIS がクラッシュすると、ジャーナリングを停止する前に始まっていたトランザクションが不完全な状態になっていても、起動時のリカバリ・プロセスではそのトランザクションはロールバックされません。これは、トランザクションはコミットされていてもジャーナリングされていないからです。
一方、ジャーナル・ファイルを切り替えても、トランザクションには影響がありません。ジャーナルの切り替えで複数のジャーナル・ファイルが生成され、それらにトランザクションが分散しても、ロールバックは正確に実行されます。したがって、可能であれば、ジャーナリングを停止するよりもジャーナル・ファイルを切り替えることをお勧めします。
ジャーナリングを停止するには、^JRNSTOP ルーチンを使用するか、または ^JOURNAL ルーチン・メニューからオプション 2 の [ジャーナリングの停止] を選択します。詳細は、"^JRNSTART を使用したジャーナリングの停止" を参照してください。
管理ポータルからジャーナリングは停止できません。
ジャーナリングを停止すると、監査が有効になっている場合は InterSystems IRIS によって変更に対する監査が実行されます。
ジャーナル・ファイルの表示
ジャーナル・ファイルは、管理ポータルの [ジャーナル] ページ ([システム処理]→[ジャーナル]) で表示できます。
-
[ジャーナル] ページでは、必要に応じて [フィルタ] ボックスを使用して、ジャーナル・ファイルのリストの件数を絞り込むことができます。
インスタンスがミラー・メンバとして構成されている場合、既定では、ミラーリングされるものとミラーリングされないものを含めて、すべてのジャーナル・ファイルが表示されます。必要に応じて、ミラー名を含むリンク (例 : Mirror Journal Files Of 'MUNDANE') をクリックして、ミラー・ジャーナル・ファイルのみのリストを表示します。インスタンスが複数のミラーのレポート非同期メンバとして構成されている場合、ミラーごとにジャーナル・ファイル用の個別のリンクがあります。すべてのジャーナル・ファイルの表示に戻るには、[すべてのジャーナル・ファイル] リンクをクリックします。
-
ジャーナル・ファイルを表示するには、表示するジャーナル・ファイルの行で [表示] をクリックします。ジャーナル・ファイルは、[ジャーナル表示] ページにレコードごとに表示されます。以下のフィールドがあります。
-
オフセット — ジャーナル・ファイル内のレコードのオフセット番号。
-
時間 — ジャーナル・レコードを含むバッファが作成された時間 (レコードに記述された操作が発生した時間ではありません)。
-
プロセス — レコードを作成したプロセスの ID。
-
タイプ — レコードに記述された操作のタイプ。([タイプ] 列に示される値についての情報は、"^JRNDUMP を使用したジャーナル・レコードの表示" の "ジャーナル・ファイルの処理" テーブルで提供されています。)
-
トランザクション中 — 操作がトランザクションの一部として発生したかどうか。
-
グローバルノード — 操作によって変更されたグローバル・ノード。
-
データベース — 変更が発生したデータベース。
-
-
以下を実行できます。
-
レコードの [オフセット] 列をクリックし、レコードの詳細を含むダイアログ・ボックスを表示します。
-
以下の項目ごとにレコードを色分けするかどうかを選択します。バッファ作成時刻、ジャーナルに記録された処理を実行したプロセス、処理のタイプ、処理がトランザクションの一部かどうか、処理に関与したグローバル、処理に関与したデータベース。
-
[一致] ボックスおよび [検索] ボタンを使用して、レコードの特定のレコード・セットを検索します。
-
手動検索の場合、最初のドロップダウンを検索基準にする列に設定し、“等しい” や “等しくない” などの演算子を選択し、比較する値を最も右のボックスに入力し、[検索] をクリックします。
-
列の 1 つの特定のセルを比較するには、単にそのセルをダブルクリックします。例えば、KILL 処理を含むすべてのジャーナル・レコードを検索するには、[KILL] を含む [タイプ] 列の任意のセルをダブルクリックします。演算子ドロップダウンは自動的に “等しい” に設定されますが、[検索] を押す前に変更できます。
-
-
^JRNDUMP ユーティリティを使用してジャーナル全体を表示したり、SELECT^JRNDUMP のエントリ・ポイントを使用して、選択したエントリを表示したりすることもできます。詳細は、"^JRNDUMP を使用したジャーナル・レコードの表示" を参照してください。
ジャーナル・ファイルの切り替え
システムは、以下の状況でジャーナル・ファイルを自動的に切り替えます。
-
InterSystems IRIS データベースのバックアップ実行後。
-
現在のジャーナル・ファイルのサイズが最大許容量 ([ジャーナル設定] ページで設定可能) に達したとき。
-
代替ディレクトリが指定されている場合に、ジャーナル・ディレクトリが使用不可能になったとき。
-
管理ポータルの [ジャーナル設定] ページ ([システム管理]→[構成]→[システム構成]→[ジャーナル設定]) での設定の更新後。
ジャーナリングを停止して開始するより、ジャーナル・ファイルを切り替える方が望ましい選択です。これは、前者のプロセスでは、停止後、再開するまでに発生したグローバル操作はジャーナリングされないためです。
ジャーナル・ファイルを手動で切り替えるには、以下の手順に従います。
-
管理ポータルの [ジャーナル] ページ ([システム処理]→[ジャーナル]) に移動します。
-
データベース・ジャーナル・ファイルのリストの上にある [ジャーナルの切り替え] をクリックします。
-
[OK] をクリックして、ジャーナルの切り替えを確定します。
^JRNSWTCH ルーチンを使用するか、または ^JOURNAL ルーチン・メニューからオプション 3 の [ジャーナル・ファイルの切り換え] を選択することで、ジャーナル・ファイルを切り替えることもできます。詳細は、"^JRNSWTCH を使用したジャーナル・ファイルの切り替え" を参照してください。
ジャーナル・ディレクトリの切り替え
"ジャーナル設定の構成" の説明のように、ジャーナリングは、プライマリ・ディレクトリが何らかの理由で書き込みできなくなった場合、自動的にセカンダリ・ジャーナル・ディレクトリに切り替わります (構成されていることが前提)。ジャーナル・ディレクトリを手動で切り替えるには、以下を実行します。
-
管理ポータルの [ジャーナル] ページ ([システム処理]→[ジャーナル]) に移動します。
-
データベース・ジャーナル・ファイルのリストの上にある [ディレクトリの切り替え] をクリックします。
-
[OK] をクリックして、ジャーナルの切り替えを確定します。
^JOURNAL ルーチン・メニューからオプション 13 の [ジャーナルのセカンダリ/プライマリ・ディレクトリへの切り替え] を選択することで、ジャーナル・ディレクトリを切り替えることも可能です。詳細は、"SWDIR^JOURNAL を使用したジャーナル・ディレクトリの切り替え" を参照してください。
ジャーナル・ファイル・プロファイルの表示
[ジャーナル] ページでは、ジャーナル・ファイルのグローバル・プロファイルを表示できます。このプロファイルには、ファイルのレコードに表示されるグローバルおよびそれぞれのレコード数が示されます。
-
[ジャーナル] ページでは、必要に応じて [フィルタ] ボックスを使用して、ジャーナル・ファイルのリストの件数を絞り込むことができます。
-
ジャーナル・ファイルのプロファイルを表示するには、該当のジャーナル・ファイル行の [プロファイル] をクリックします。[ジャーナルプロファイル] ページにプロファイルが表示されます。ジャーナル・ファイルに多数のレコードがある場合、プロファイルの構築に時間がかかる場合があります。
-
ジャーナル・プロファイルは、グローバルごと、または各グローバルが表示されるすべてのレコードの累積サイズごと (バイト単位) にソートすることができます。
-
ジャーナル・ファイルが現在使用中のものの場合、一定の時間経過後に [再計算] ボタンを使用してプロファイルを再構築できます。
ジャーナル・ファイルの整合性のチェック
[ジャーナル] ページでは、ジャーナル・ファイルの整合性をチェックできます。この処理では、ジャーナル・ファイルが想定された場所で終了していることを確認し、ファイルの終わりからレコードの欠落がないことを確認します。
-
[ジャーナル] ページでは、必要に応じて [フィルタ] ボックスを使用して、ジャーナル・ファイルのリストの件数を絞り込むことができます。
-
ジャーナル・ファイルの整合性チェックを実行するには、該当のジャーナル・ファイル行の [整合性チェック] をクリックします。[ジャーナル整合性チェック] ページが表示されます。
-
[詳細確認] を選択し、ジャーナル・ファイルのレコードをレコードごとに最初からスキャンし、潜在的な欠落レコードを検出します。
-
[OK] をクリックすると、[バックグラウンドタスク] ページ ([システム処理]→[バックグラウンドタスク]) へのリンクが表示され、整合性チェックのステータスおよび結果を表示できます。
ジャーナル・ファイルの要約の表示
[ジャーナル・ファイルの要約] ページでは、ジャーナル・ファイルに関する要約を表示できます。例えば、ジャーナル・ファイルが暗号化されているかどうか、ジャーナル・ファイルに記録されている操作の影響を受けるのはどのデータベースか、などを確認できます。
-
ホーム ページの [システム処理] メニューで [ジャーナル] をクリックし、インスタンスのジャーナル・ファイルを一覧表示します。必要に応じて、[フィルタ] ボックスを使用してリストの件数を絞り込みます。
-
ジャーナル・ファイルに関する情報を表示するには、該当のジャーナル・ファイル行の [要約] をクリックします。[ジャーナル・ファイルの要約] ページが表示されます。
ジャーナル・ファイルの削除
使用しなくなったジャーナル・ファイルを削除するタスクを定期的に実行するようにスケジュールできます。新しい InterSystems IRIS インスタンスには、事前にスケジュールされたジャーナルの削除タスクがあります。このタスクは、毎日午前 0 時に実行するジャーナルの切り替えタスクの後に実行するようにスケジュールされています。ミラー・ジャーナル・ファイルの削除に関する詳細は、"ミラー・ジャーナル・ファイルの削除" を参照してください。
この削除プロセスでは、[ジャーナル設定] ページの [ジャーナルファイルを削除するタイミング] の設定に基づいてジャーナル・ファイルを削除します。詳細は、"ジャーナルの設定の構成" を参照してください。
ジャーナル・ファイルは、削除の設定の条件を満たしていても保持される場合があります。この場合、イベントはメッセージ・ログに記録され、理由 (例えば、ジャーナル・ファイルに開いているトランザクションが含まれているなど) が示されます。
PURGE^JOURNAL ルーチンを使用するか、または ^JOURNAL ルーチン・メニューからオプション 6 の [ジャーナル・ファイルの削除] を選択することで、ジャーナル・ファイルを削除することもできます。詳細は、"PURGE^JOURNAL を使用したジャーナル・ファイルの削除" を参照してください。
構成されているジャーナル削除設定は %ZJRNPURGE ルーチンでオーバーライドできます。詳細は、インターシステムズのサポート窓口Opens in a new tabまでお問い合わせください。
ミラー・ジャーナル・ファイルの削除
ミラー・ジャーナル・ファイルは、プライマリ・フェイルオーバー・メンバによって他のミラー・メンバに正しく配布され、それぞれでデジャーナルされて、ミラーリングされるデータベースと同期する必要があるため、追加の削除条件に従います (このプロセスの詳細は、"ミラー同期" を参照してください)。ミラーが通常動作しているときには、ファイルのバックアップへの転送は同期的に実行され、常に高速ですが、非同期メンバへの転送には時間がかかり、非同期メンバがミラーから切断されているときには遅延する場合があります。バックアップ・メンバおよび DR 非同期メンバは、フェイルオーバーまたは災害復旧の状況ではプライマリになる資格があるため、プライマリと同じポリシーにも従う必要があります。したがって、ミラー・ジャーナル・ファイルは以下のように削除されます。
-
プライマリ・フェイルオーバー・メンバでは、ローカル・ジャーナル・ファイルの削除条件が満たされたとき ("ジャーナル設定の構成" を参照) およびバックアップ・メンバ (存在する場合) とすべての非同期メンバに受信されたとき、ファイルは削除されます (いずれか長時間要する方)。ただし、非同期メンバがミラーから 14 日間以上切断されたままの場合、その非同期メンバがファイルを受信していなくてもそのファイルは削除されます。
-
バックアップ・フェイルオーバー・メンバ (存在する場合) およびすべての災害復旧 (DR) 非同期メンバでは、そのメンバで完全にデジャーナルされたとき、ローカル・ジャーナル・ファイルの削除条件が満たされたとき、およびすべての非同期メンバに受信されたとき、ファイルは削除されます。ただし、非同期メンバが 14 日間よりも長く切断されたままの場合には同じ例外が適用されます。
-
レポート非同期メンバでは、ミラー・ジャーナル・ファイルは、既定ではデジャーナルされた直後に削除され、非同期ミラー・メンバが領域を使い果たさないようにします (特に、非同期メンバが複数のミラーからジャーナル・ファイルを受け取っている場合)。必要に応じて、レポート非同期メンバを構成して、代わりにファイルを保持し、ローカル・ジャーナル・ファイルの削除条件に従って削除するようにできます。"非同期メンバの編集または削除" を参照してください。
現在開いているトランザクションを含むミラー・ジャーナル・ファイルはどのミラー・メンバでも削除されません。
ローカル・ジャーナル・ファイルの削除条件の規定時間よりも長くミラー・ジャーナル・ファイルが保持されると、メンバのメッセージ・ログにこれが記録され、その理由が示されます。
SYS.Mirror.JrnPurgeDefaultWait()Opens in a new tab メソッドを使用すると、ミラー・ジャーナル・ファイルを削除するための既定の設定を変更できます。
ジャーナル・ファイルのリストア
システム・クラッシュあるいはディスク・ハードウェア障害の後、バックアップ・コピーをリストアして、データベースを再生成します。ジャーナリングが有効になっていてジャーナル・ファイルにアクセスできる場合は、最後のバックアップ以降にジャーナルに記録された変更をデータベースに適用することで、さらにデータベースをリストアできます。
ジャーナル・ファイルをリストアする手順は以下のとおりです。
-
まず、すべてのユーザが InterSystems IRIS を終了していることを確認します。
-
ジャーナリングがインスタンスについて有効になっている場合、^JRNSTOP を使用してジャーナリングを停止します ("^JRNSTOP を使用したジャーナリングの停止" を参照)。
-
データベースの最新バックアップをリストアします。
-
ジャーナル・リストア・ユーティリティを実行します。詳細は、"^JRNRESTO を使用したジャーナル・ファイルからのグローバルのリストア" を参照してください。
-
ジャーナリングが無効の場合、再開します。
管理ポータルからジャーナル・リストア・プロセスを実行することはできません。