Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

バックアップとリストア

この章では、システムの確かなバックアップ計画を立てる際に考慮すべき要素について説明します。バックアップの整合性と復元可能性を確保する方法および推奨バックアップ方法について説明します。さらに、ネイティブ・ユーティリティまたはサードパーティ・ユーティリティを使用してこれらの作業を実行する手順についても詳しく説明します。

バックアップ方法は、オペレーティング・システム、使用するバックアップ・ユーティリティ、ディスク構成、バックアップ・デバイスなどによって異なる場合があります。ご使用の環境に適したバックアップ方法の開発や現在のバックアップ方法の見直しのために詳細な情報が必要な場合は、インターシステムズのサポート窓口Opens in a new tabまでお問い合わせください。

バックアップの整合性と復元可能性

バックアップ方法に関係なく、定期的にバックアップをリストアして、ご使用の手順を検証する必要があります。最善の方法は、運用環境のあらゆるバックアップを代替サーバにリストアしてから、リストアしたデータベースの整合性を検証することです (詳細は、このガイドの “データ整合性の概要” の章にある "構造的な整合性の検証" を参照)。これには以下のメリットがあります。

  • バックアップ・メディアの復元可能性を検証します。

  • バックアップ内のデータベースの物理的な整合性を検証し、実行中の更新の影響を受けている揮発性データベースで整合性チェックを実行したときに整合性エラーが誤って報告されるという問題を回避します。

  • バックアップのウォーム・コピーを提供し、災害時のバックアップのリストアに必要な時間を大幅に短縮します。そのような事態が発生した場合でも、必要な処理はジャーナル・ファイルの更新のリストアのみです。

  • 最後の良好なバックアップを構築します。

このドキュメントで説明するバックアップ方法では、データベースの物理構造が保持されます。したがって、リストアされたコピーの整合性チェックを完全に行い、それに問題がなければ、バックアップ時点のプロダクション・データベースの整合性にも問題がなかったことを意味します。ただし、その逆は True ではありません。リストアされたデータベースのコピーに整合性のエラーが検出されても、それは必ずしもプロダクション・データベースの整合性に問題があったことを意味しません。例えば、バックアップ・メディアにエラーが発生した可能性もあります。リストアされたデータベースで整合性エラーが検出された場合は、即座に実稼働データベースで整合性チェックを行い、プロダクション・システムの整合性を検証してください。

リストアされたデータベースでアプリケーションが適切に動作することを検証するには、アプリケーション・レベルでチェックを実行することも可能です。これらのチェックを実行するには、ジャーナル・ファイルをリストアしてトランザクションの整合性をリストアすることが必要な場合もあります。詳細は "ジャーナルの重要性" を参照してください。

バックアップをリストアし、それからリカバリが可能であることを確認したら、次の良好なバックアップが作成されるまでそのコピーを保持しておくことをお勧めします。したがって、バックアップの検証に使用するサーバには、最新の良好なバックアップと現在検証中のバックアップを格納するために、プロダクション領域の 2 倍のストレージ領域があることが理想的です(ニーズによっては、バックアップのリストアに使用するストレージ・デバイスの性能の要件は厳しくなく、ストレージ・ソリューションがより安価であっても問題がない場合があります)。このようにすると、現在のバックアップが失敗しても、災害時に最新の良好なバックアップがすぐに使用できる状態にあります。データ・センタを破壊する可能性がある災害から企業のデータベースを保護するには、定期的にバックアップ・メディアを安全なオフサイトの場所に送ります。

ジャーナル・リストアの重要性

InterSystems IRIS® データベースのリストア可能なバックアップだけでは、プロダクション・データのリストアには十分ではありません。障害が発生し、バックアップからリストアする必要が生じた場合は、リストアしたデータベースのコピーにジャーナル・ファイル (このドキュメントの “ジャーナリング” の章を参照) を適用することも必要です。このジャーナル・リストアでは以下のことが可能です。

  • バックアップの時点から障害発生時までの間にジャーナルに記述された更新をすべてリストアします。

  • コミットされていないトランザクションをロールバックして、データベースのトランザクションの整合性をリストアします。

この章で説明するバックアップ・アプローチでも、個々にリストアできるデータベースの物理的に整合性が保たれたコピーを提供できますが、バックアップ時点で開いていたトランザクションを確実にロールバックするには、バックアップ時点より新しいジャーナルがなくても、ジャーナル・リストアも実行する必要があります。これは、使用するバックアップ・アプローチに各データベースのジャーナル・ファイルが含まれている必要があることを意味します。

システム全体のクラッシュ整合性スナップショット・イメージをリストアすると (仮想環境で一般的)、InterSystems IRIS の通常の起動リカバリによって、ライト・イメージ・ジャーナル (WIJ。このドキュメントの “ライト・イメージ・ジャーナリング” の章を参照) による物理的な整合性 (中断された書き込みの完了を含む) とジャーナリングによる論理的な整合性 (トランザクションのロールバックを含む) の両方が自動的に確保されます。ただし、これは、データベース、インスタンスのインストール・ディレクトリ、WIJ、ジャーナル・ファイルに加えて、データベースに関連付けられたその他の外部ファイルなど、ある瞬間のすべてのコンポーネントがデータベースのこのようなスナップショット・バックアップ・イメージに含まれている必要があることを意味します。

リカバリのためにジャーナルの可用性を確保することに関する重要な情報については、“ジャーナリング” の章の "ジャーナリングの最善の使用方法" を必ず参照してください。特に、そのセクションで説明されるように、パフォーマンスと復元可能性を高めるために、プライマリおよび代替ジャーナル・ディレクトリは、それぞれ異なるストレージ・デバイスに配置し、データベースや WIJ が使用しているストレージ・デバイスとも異なるストレージ・デバイスに配置することをお勧めします。

Important:

定期的にディザスタ・リカバリの方法全体を最初から最後までテストする必要があります。これには、バックアップのリストア、ジャーナルのリストア、およびリストアされた環境でのユーザの操作のシミュレーションが含まれます。

バックアップの方法

データベースをバックアップする最適な方法は、外部バックアップとオンライン・バックアップです。このセクションでは、この 2 つの方法と、目的が特殊なその他の方法について説明します。

外部バックアップ

外部バックアップは、現時点でデータベース全体のバックアップに推奨される最適な方法です。外部バックアップは、既存のシステム・バックアップ手順に簡単に統合でき、通常はダウンタイムなしでバックアップできることを見越しておけます。外部バックアップは主に、論理ディスク・ボリュームの有効な “スナップショット” を迅速に作成するテクノロジと共に使用します。このようなテクノロジは、ストレージアレイからオペレーティング・システム、ディスクの単純なミラーリングに至るまで、さまざまなレベルで存在します。このセクションでは、スナップショット・テクノロジが使用できないシステムに関する特別な考慮事項についても説明します。

スナップショットの整合性を確保するために、InterSystems IRIS には、スナップショットの作成中にデータベースへの書き込みをフリーズする方法があります。スナップショットの作成中は、データベース・ファイルへの物理的な書き込みのみがフリーズされ、ユーザ・プロセスによるメモリ内の更新は引き続き実行できます。このスナップショットは通常、システムで使用中のファイル・システムすべてのスナップショットになります。このスナップショットには、少なくとも InterSystems IRIS データベースが使用するすべてのディレクトリが何らかの形で収録されています。このディレクトリには、インストール・ディレクトリ、データベース・ディレクトリ、ジャーナル・ディレクトリおよび代替ジャーナル・ディレクトリ、WIJ ディレクトリ、システムで使用する外部ファイルを格納したあらゆるディレクトリなどがあります。書き込みができるようになったら、スナップショットをバックアップすることができます。その後、プロダクションに再結合するか、またはウォーム・バックアップとしてオンラインのままにしておくことができます (使用されている具体的なテクノロジによって異なる)。

Note:

使用中のデータベースの整合性チェック実行時にエラーが誤って報告されるという問題を回避するために、ファイル・システムのスナップショットが取られた直後にデータベースがチェックされるように、整合性チェックをこのセクションで説明したような手順に統合することができます。(データベース整合性のチェックに関する詳細は、このガイドの “データ整合性の概要” の章にある "構造的な整合性の検証" を参照してください)。

以下の表に、外部バックアップ方法のメリットとデメリットを示します。

メリット デメリット

ほとんどのシステムで、ユーザの操作が停止されることなく、ダウンタイムなしのバックアップが可能です。

書き込みのフリーズが 10 分を超える場合に、引き続きユーザに実行を許可するには、特別な考慮が必要になります。

既存のバックアップ手順と簡単に統合できます。

 

データベースをフリーズするクラス・メソッドは Backup.General.ExternalFreeze()Opens in a new tab で、フリーズを解除するクラス・メソッドは Backup.General.ExternalThaw()Opens in a new tab です。書き込みの停止に加えて、フリーズする方法では、ジャーナル・ファイルの切り替えやジャーナルへのバックアップ・マーカの書き込みも処理されます。データベースの物理的な書き込みがフリーズされている間も、ジャーナル・ファイルには引き続き正常に書き込まれます。データベースの物理的な書き込みがフリーズしている間にシステムがクラッシュした場合、通常どおり起動時にジャーナルからデータがリカバリされます。

外部バックアップを設定するには、以下の手順を実行するスクリプトを記述します。

  1. Backup.General.ExternalFreeze()Opens in a new tab メソッドを使用して、データベースへの書き込みをフリーズします。このメソッドをさまざまなプラットフォームで使用する例が、クラス・ドキュメントに含まれています。

    Note:

    セキュリティ構成で、バックアップ・スクリプトがデータベース資格情報を提供するように求められる場合、必要な資格情報が含まれているファイルから入力をリダイレクトすることにより、これを実行できます。あるいは、OS レベルの認証を有効にし、スクリプトを実行している OS ユーザの InterSystems IRIS アカウントを作成できます。

  2. 外部のスナップショット・ユーティリティを使用して、ファイル・システムのスナップショットを作成します。

  3. Backup.General.ExternalThaw()Opens in a new tab メソッドを使用して、データベース書き込みを再開します。

    Note:

    Backup.General.ExternalThaw()Opens in a new tab メソッドでライト・デーモンが再開されず、インスタンスのフリーズが解除されない場合、-W オプションを指定して irisstat コマンドOpens in a new tab を発行することで、これを行うことができます (このオプションでは、バックアップ以外が原因で発生したハングまたは一時停止の場合、ライト・デーモンのフリーズは解除されません)。

  4. バックアップ・メディアにスナップショットをコピーします。

  5. バックアップが完了したら、Backup.General.ExternalSetHistory()Opens in a new tab メソッドを使用して、バックアップをバックアップ履歴に記録できます。これにより、[ジャーナル設定] ページの [ジャーナルファイルを削除するタイミング]→[この回数のバックアップ成功後] の設定 (既定値は 2) によっては、バックアップを記録することでジャーナルの削除がトリガされる可能性があることに注意してください。詳細は、このドキュメントの “ジャーナリング” にある "ジャーナル設定の構成" を参照してください。

これらのメソッドのプラットフォーム固有の例については、"インターシステムズ・クラス・リファレンス" の "Backup.GeneralOpens in a new tab" クラスのドキュメントを参照してください。

スナップショット・テクノロジが使用できないシステムの場合、上記のスナップショットの作成をファイル・システムのコピーに置き換えることにより、外部バックアップ・アプローチで低速のファイル・システム・コピーを使用できます。これは以下のいずれかの方法で実行するか、または必要に応じてオンライン・バックアップを代替手段として使用することができます。

  • ダウンタイムの追放Backup.General.ExternalFreeze()Opens in a new tab を呼び出すときに ExternalFreezeTimeOut パラメータの値を指定し、フリーズ中でもデータベースの更新をメモリのバッファに格納できるように、十分なデータベース・キャッシュを構成しておきます。この場合、ユーザは物理的な書き込みがフリーズしている間に、最大で ExternalFreezeTimeOut に指定した値まで操作を続行できます。ジャーナリングは、書き込みがフリーズされている間にシステム・クラッシュが発生した場合に、データが失われないようにするうえで重要です。クラッシュが発生した場合は、通常よりもシステムの起動に時間がかかる可能性があります。[エラー発生時に凍結する] に対するジャーナルの設定は、[はい] に設定する必要があります (詳細は、このドキュメントの “ジャーナリング” の章の "ジャーナル入出力エラー" のセクションを参照)。

  • ユーザ操作の停止:フリーズ時間として想定する時間の既定値を 10 分にします。この時間が経過すると、Backup.General.ExternalThaw()Opens in a new tab が呼び出されるまで、ユーザの操作は一時停止状態になります。

Important:

バックアップされているインスタンスがミラーのプライマリ・フェイルオーバー・メンバである場合 ("高可用性ガイド" の “ミラーリング” の章を参照)、外部フリーズが Backup.General.ExternalFreeze()Opens in a new tab の ExternalFreezeTimeOut パラメータの指定よりも長く更新を中断しないようにする必要があります。指定時間より長い中断が起こると、ミラーがバックアップ・フェイルオーバー・メンバにフェイルオーバーし、その結果、進行中のバックアップ操作が終了されてしまいます。

Note:

InterSystems IRIS は、Windows のボリューム・シャドウ・コピー・サービス (VSS) をサポートしており、その際にはデータベースに代わってライタとして動作します。VSS シャドウに含まれる InterSystems IRIS データベースのコピーには、トランザクション上の論理的な整合性はありませんが、物理的な整合性があるため、個別にリストアできます。リストアしたデータベースのトランザクション上の整合性を確保するには、ジャーナル・ファイルもリストアする必要があります。VSS シャドウの作成時にマウントされたデータベースのみが VSS シャドウに含まれます。

Caché 用 VSS ライタは、管理者のみが起動できます。

Windows システムでは、iris.cpf ファイルの EnableVSSBackup パラメータは既定で 1 (有効) に設定されています。InterSystems IRIS の起動時に、“InterSystems IRIS VSS ライタが起動しました” というメッセージがメッセージ・ログに書き込まれます。VSS のシャドウ・コピーを作成すると、InterSystems IRIS は、メッセージ・ログのメッセージに示されているように、Backup.General.ExternalFreeze()Opens in a new tab および Backup.General.ExternalThaw()Opens in a new tab を自動的に呼び出します。

オンライン・バックアップ

InterSystems IRIS には、プロダクション・システムのユーザにダウンタイムがほとんど、またはまったく発生しないよう設計された、専用のバックアップ・メカニズムが実装されています。オンライン・バックアップでは、IRIS.DAT ファイルのデータのみがバックアップされ、データベース内でデータに割り当てられているブロックがすべて取得されます。シーケンシャル・ファイルに出力されます。このバックアップ方法は、システム・バックアップと連係させて、オンライン・バックアップの出力ファイルを、他のファイルと共にバックアップ・メディアにコピーする必要があります。このシステム・バックアップには、システムで使用されているすべてのファイル・システム (IRIS.DAT ファイルは除く) を含める必要があります。少なくとも、インストール・ディレクトリ、ジャーナル・ディレクトリと代替ジャーナル・ディレクトリ、Web ゲートウェイ・ファイル、および InterSystems IRIS で使用される外部ファイルを格納したあらゆるディレクトリを含める必要があります。IRIS.DAT ファイルは含めないでください。

オンライン・バックアップ・プロシージャでは、複数のパスを使用してデータがコピーされます。前のパスにある間に変更されたデータ・ブロックのリストがコピーされますが、連続的なパスを経るにつれ、通常、このリストはしだいに小さくなります。一般に、バックアップを完了するには 3 つのパスで十分です。最終パスの期間全体と、先行する各パスにある間の短期間、データベースへの書き込みが停止されます。バックアップの際にデータベースへの物理的な書き込みが一時停止している間も、ユーザ・プロセスによるメモリ内の更新は引き続き実行できます。

今日の外部バックアップ・オプションの機能を考えると、通常は、オンライン・バックアップよりもニーズに合った外部バックアップ・アプローチを見つけることができます。以下の表に、オンライン・バックアップ方法のメリットとデメリットを示します。

メリット デメリット

ほとんどのシステムで、ダウンタイムなしのバックアップが可能です。

データベースのみをバックアップします。

定期的な累積バックアップやインクリメンタル・バックアップをサポートします。

バックアップとリストアは比較的低速です。
エンタープライズクラス・ストレージは不要です。

1 つのデータベースをリストアするには、バックアップ・ファイル全体を処理する必要があります。

 

リストアを実行するには、InterSystems IRIS のインスタンスを実行しておく必要があります。

 

データ量が大きすぎてリストアしにくい場合があります。

 

暗号化データベースのバックアップは暗号化されません。

  最新の外部バックアップ・テクノロジでよく見られる一部の機能が含まれていない可能性があります。

オンライン・バックアップには以下の種類があります。これらを組み合わせることによって、バックアップ出力のサイズとバックアップからの回復に要する時間のバランスを調整できます。

  • フル・バックアップ — 使用中のすべてのブロックのイメージをバックアップ・メディアに書き込みます。

  • 累積バックアップ — 最後のフル・バックアップ以降に変更されたすべてのブロックを書き込みます。以前のフル・バックアップと共に使用する必要があります。

  • インクリメンタル・バックアップ — タイプに関係なく最後に行われたバックアップ以降に変更されたすべてのブロックを書き込みます。以前のフル・バックアップと共に使用する必要があります。また、必要に応じてそのフル・バックアップ以降に実行した累積バックアップあるいはインクリメンタル・バックアップも使用します。

オンライン・バックアップを使用する場合は、最初にフル・バックアップを実行する必要があります。累積バックアップおよびインクリメンタル・バックアップ (またはこのいずれか) は、その後で実行できます。

オンライン・バックアップでは、すべてのデータベース・ブロックがインターリーブ方式で 1 つのファイルに書き込まれます。極端に大きいデータをオンライン・バックアップでバックアップした場合、リストアは煩雑になる可能性があります。このような場合は、バックアップ方法の計画時に対応を検討します。

リストア検証プロセスでは、リストアされたデータベースのコピーがオンラインで提供されるため、制約の解消に役立ちます。このバックアップ検証方法は、インクリメンタル・バックアップや累積バックアップにも使用されます。インクリメンタル・バックアップまたは累積バックアップは、それぞれ実行後に直ちに代替サーバにリストアできます。例えば、フル・バックアップを毎週行い、インクリメンタル・バックアップを毎日行う計画を立てたとします。毎日のバックアップそれぞれには、その日に変更されたブロックのみが含まれているので、問題は発生しません。この方法を使用すると、毎日そのインクリメンタル・バックアップを代替サーバにリストアし、リストアされたデータベースの整合性を確認する必要があります。

現在検証中のバックアップをリストアする際は、健全性が確認された最新のバックアップのウォーム・コピーを上書きしないようにする必要があります。また、既存のリストアされたデータベースにインクリメンタル・バックアップをリストアする場合にもこれに注意する必要があります。バックアップが最新で健全性にも問題がないと判定された時点から、それに次の日のインクリメンタル・バックアップまたは累積バックアップを適用するまでの間は、それ以降のインクリメンタル・リストアに失敗した場合に備えて、コピーを保存し、最新の健全なバックアップを常にオンラインで使用できるようにしておく必要があります。リストアしたバックアップで整合性の問題が検出された場合は、そのバックアップを破棄しなければいけません。以降のインクリメンタル・リストアのターゲットに使用することはできません。

オンライン・バックアップからシステムをリストアする場合は、最初に最新のフル・バックアップを、次に最新の累積バックアップを、その後で、その累積バックアップ以降に行ったすべてのインクリメンタル・バックアップをリストアします。

オンライン・バックアップの構成の詳細は、この章の "オンライン・バックアップ設定の構成" を参照してください。オンライン・バックアップの実行の詳細は、この章の "オンライン・バックアップの管理" を参照してください。

コールド・バックアップ

コールド・バックアップとは、データベースが正常にシャットダウンされたときに行われる、システムの外部バックアップのことです。このバックアップは通常、システムで使用されているファイル・システムすべてのバックアップです。このスナップショットには、少なくとも InterSystems IRIS が使用するすべてのディレクトリが何らかの形で収録されています。このディレクトリには、インストール・ディレクトリ、データベース・ディレクトリ、ジャーナル・ディレクトリおよび代替ジャーナル・ディレクトリ、WIJ ディレクトリ、データベースで使用する外部ファイルを格納したあらゆるディレクトリなどがあります。この方法は、InterSystems IRIS が通常夜間に停止されるシステムに適しています。

以下の表に、コールド・バックアップ方法のメリットとデメリットを示します。

メリット デメリット

手順が簡単です (停止してインスタンス全体をコピー)。

データベースは使用できません。

場合によっては、システムがシャットダウンしているときにバックアップを実行すると役に立ちます。

 

並行外部バックアップ

並行外部バックアップ方法 ("ダーティ・バックアップ" とも呼ばれる) は、ダウンタイムなしのバックアップが必要だが、導入の状況により、標準のダウンタイムなしの外部バックアップも、ダウンタイムなしのオンライン・バックアップも不可能な場合に使用できます。この方法の一般的なシナリオとしては、例えば、スナップショット・テクノロジが使用できないうえ、データベースがきわめて大規模なため、以下の両方が当てはまる状況が考えられます。

並行外部バックアップ方法は、通常のデータベースの書き込みが行われている間にシステムの外部バックアップを実行できるようにすることによって機能します。この方法で取得したデータベースのコピーは、破損している (“ダーティ” である) と予想されます。このコピーの後にインクリメンタル・オンライン・バックアップを行います。これにより、コピーが行われている間に変更されたすべてのデータベース・ブロックが取得されます。バックアップのリストア時には、まずデータベースのコピーをリストアし、続いてインクリメンタル・バックアップをリストアします。詳細な手順は以下のとおりです。

  1. 最新のバックアップ以降に変更されたデータベース・ブロックのリストを削除します。

     Do CLRINC^DBACK("QUIET")

    詳細は、この章の "CLRINC^DBACK" を参照してください。

  2. 選択したオペレーティング・システム、またはサードパーティのバックアップ・ユーティリティを使用して、IRIS.DAT データベース・ファイルをコピーします。

  3. 外部バックアップ・ユーティリティを使用したことを示す E パラメータを使用して、$$BACKUP^DBACK を呼び出します。以下に例を示します。

     Set x=$$BACKUP^DBACK("","E","Dirty external backup - incrementals must be applied.","","","")

    詳細は、この章の "BACKUP^DBACK" を参照してください。

  4. インクリメンタル・バックアップを実行します。これによって、IRIS.DAT ファイルのコピー中に変更されたブロックがすべてコピーされます。構成によっては、このときにごく短時間ですがユーザ・プロセスが一時停止する場合があります。

     Set x=$$BACKUP^DBACK("","I","Nightly","test.bck","N","bck.log","QUIET","N","Y")
    

    詳細は、この章の "BACKUP^DBACK" を参照してください。

以下の表に、並行外部バックアップ方法のメリットとデメリットを示します。

メリット デメリット

他の推奨アプローチのいずれも使用できないサイトにおいて、停止時間がほとんど、あるいはまったく発生せずにバックアップ可能な方法です。

複数のファイルをリストアする必要があります (IRIS.DAT データベース・ファイルとインクリメンタル・バックアップ・ファイル)。このため、リストア処理に長時間を要します。

 

手順が複雑です。

 

リストアを実行するには、InterSystems IRIS のインスタンスを実行しておく必要があります。

バックアップからのリストア

定期的にバックアップをリストアして、ご使用の手順をテストする必要があります。この章の "バックアップの整合性と復元可能性" のセクションの説明に従って、検証時にはあらゆるバックアップを代替サーバにリストアし、リストアのウォーム・コピーとして機能するようにすることをお勧めします。

バックアップ・リストアは、複雑かつ時間がかかる場合がありますが、定期的にリストアを実施しておくことで、関連するリスクの軽減に役立ちます。バックアップ・リストアは、大規模な災害復旧計画の一環として検討する必要があります。災害復旧の代替メカニズムとして、ミラーリングも使用できます。

バックアップ・リストアのシナリオの詳細は、インターシステムズのサポート窓口Opens in a new tabまでお問い合わせください。

このセクションでは、以下のトピックについて説明します。

バックアップ・リストアのシナリオ

バックアップ・リストアを実行するには、さまざまなシナリオがあります。多くの場合、一連の固有の要件やリストア手順があります。このセクションでは、各種バックアップ方法のバリエーションを含め、以下の一般的なリストア・シナリオについて説明します。

  • システム全体のリストア — InterSystems IRIS またはシステムで使用中のストレージのすべてまたは大部分が、全体として使用不可能になった場合に使用します。バックアップ・メディアからシステム全体のバックアップがリストア済みで、これから実働環境で使用できる状態まで InterSystems IRIS をリカバリする必要があります。

  • データベースのみのリストア — InterSystems IRIS データベースの一部またはすべてが使用不可能になり、バックアップからリカバリする必要がある場合に使用します。

  • 別のシステムへのデータベースのリストア/移行 — 1 つ以上のデータベースが別のシステムにリストアされる場合に使用します。ターゲット・システムでは、新しいハードウェアや異なるプラットフォームを使用することも、同一ハードウェア上にデータベースの別のインスタンスを稼働させることも可能です。ターゲット・システムでは、ファイル・システムのレイアウトが異なっていてもかまいません。これを使用して、データベースをバックアップ・メンバまたは非同期ミラー・メンバに追加できます ("高可用性ガイド" の “ミラーリング” の章を参照)。

Important:

バックアップを作成したデータベース・インスタンスと異なるインスタンスにデータベースをリストアまたは移行する場合、データの互換性がなくならないように、以下の要件を満たしている必要があります。

  • ターゲット・インスタンスは、ソース・インスタンスと同じ文字幅 (8 ビットまたは Unicode、"インストール・ガイド" の "文字幅設定" を参照) で、かつ同じロケール ("システム管理ガイド" の “InterSystems IRIS の構成” の章にある "管理ポータルの NLS ページの使用法Opens in a new tab" を参照) である必要があります。

    この要件に対する唯一の例外は ISO 8859 Latin-1 文字セットに基づいたロケールを使用する 8 ビット・インスタンスで、これは対応する幅の文字ロケールを使用する Unicode インスタンスと互換性があります。例えば、enu8 ロケールを使用する 8 ビット・インスタンスで作成されたデータベースは、enuw ロケールを使用する Unicode インスタンスで使用できます。

  • ソース・インスタンスとターゲット・インスタンスがエンディアンの異なるシステム上に存在する場合 (このリリース用のオンライン・ドキュメント "インターシステムズのサポート対象プラットフォーム" の “サポート対象テクノロジ” セクションの “プラットフォームのエンディアン” を参照)、使用前にデータベースをターゲット・インスタンスのエンディアンに変換する必要があります。その手順については、"エンディアンが異なるターゲットへのリストア" を参照してください。

Note:

自動開始が構成されている場合に、ホスト OS の再起動時にインスタンスが自動開始しないようにしたいことがあります。これは、OS レベルでのみ行うことができ、構成に依存します。

システム全体のリストア

このシナリオでは、以下の開始点を想定しています。

  • リストアが実行されているシステムは、バックアップを生成したシステムと同一のシステムです。

  • すべてのファイル・システム (あるいは、少なくともバックアップ済みのすべてのファイル) は、バックアップ・メディアからリストアされており、オペレーシング・システム・レベルでのパス名は変更されていません。

  • InterSystems IRIS はダウンしており、リストア以降は起動されていません。

外部バックアップまたはコールド・バックアップからのシステム全体のリストア

この章で前述した "外部バックアップ" または "コールド・バックアップ" の手順を使用した場合、データベースは物理的な整合性が保たれた状態にリストアされますが、トランザクションの整合性をリストアするには、少なくともトランザクションのロールバックが必要になります。また、トランザクションのロールバック操作の前に、バックアップの時点以降のジャーナル・ファイルを適用することもあります。このセクションでは、必要なジャーナル・リストアとトランザクションのロールバックに使用する 2 つの推奨手順について説明します (実行したバックアップおよびリストアの詳細に応じて、どちらかの推奨手順を使用します)。

リストアされたシステムのイメージが、IRIS.WIJ ファイルとジャーナル・ファイルを含むある瞬間の InterSystems IRIS の全要素のスナップショット (クラッシュ整合性イメージ) であり、それよりも新しい適用対象ジャーナル・ファイルが存在しない場合、通常どおりに InterSystems IRIS を起動できます。InterSystems IRIS は、ジャーナル・リカバリとトランザクションのロールバックを自動的に実行します。これは、メンテナンス・モードで InterSystems IRIS を起動する場合にも当てはまります ("メンテナンス・モードによる InterSystems IRIS の起動" を参照)。

Note:

上記の推奨手順は、通常の外部バックアップ手順 ("外部バックアップ" および "コールド・バックアップ" を参照) が使用されていない場合でも、システム全体のクラッシュ整合性イメージがリストアされた後に適用します。 その場合、リストア・イメージ内のデータベース・ファイルは、物理的な整合性が保たれていない可能性があります。ただし、そうしたデータベース・ファイルは、ジャーナル・リカバリとトランザクションのロールバックが自動実行される前に、IRIS.WIJ ファイルから自動的にリカバリされます。リカバリの詳細は、"基本的なデータ整合性の保護" と、このガイドの “データ整合性の概要” の章にある各セクションを参照してください。

リストア・イメージに、ある瞬間の InterSystems IRIS の全要素 (IRIS.WIJ ファイル、ジャーナル・ファイル、およびその他の InterSystems IRIS ファイル) が含まれていない場合や、そのときよりも新しい適用対象ジャーナル・ファイルがある場合、手動でジャーナル・ファイル・リストア (トランザクションのロールバックを含む) を実行するために、以下の手順を使用する必要があります。

Important:

この手順では、IRIS.WIJ ファイルがバックアップ・スナップショットの一部としてバックアップされていて、そのファイルがデータベース・ファイルなどのファイルおよびファイル・システムと共にリストアされていることを前提としています。バックアップとリストアの手順を計画する際には、この方法をお勧めします。バックアップに IRIS.WIJ ファイルが含まれていない場合、"自動 WIJ およびジャーナル・リカバリを使用しない InterSystems IRIS の起動" のセクションで InterSystems IRIS の起動方法の詳細を参照してください。

  1. メンテナンス・モードで InterSystems IRIS を起動して ("メンテナンス・モードによる InterSystems IRIS の起動" を参照)、ジャーナル・リストアを実行してからユーザがシステムにアクセスできるようにします。インスタンスが既に実行中の場合、まずそれを停止してから、メンテナンス・モードで再起動する必要があります。

    Note:

    システムがダウンしたときに自動開始が構成されている場合、インスタンスが自動開始しないようにして、メンテナンス・モードで直接インスタンスを起動できるようにしたいことがあります。これは、OS レベルでのみ行うことができ、構成に依存します。

  2. ジャーナル・リストアは、"バックアップ・リストア後のジャーナル・リストア" の説明に従って実行します。

  3. ジャーナル・リストアが完了すると、アプリケーションの検証やその他のメンテナンスを必要に応じて実行できます。

  4. 通常どおりに InterSystems IRIS を再起動して、ユーザがシステムにアクセスできるようにします。

オンライン・バックアップまたは並行外部バックアップからのシステム全体のリストア

このセクションの以降の部分では、オンライン・バックアップまたは並行外部バックアップのユーザを対象に、システム全体のリストアについて説明します。オンライン・バックアップ・リストアを実行して、バックアップ出力ファイルからデータベースをリストアする必要があります。オンライン・バックアップでは、この章の "オンライン・バックアップ" のセクションで説明されているように、バックアップ出力ファイルはシステム全体のバックアップの一環としてバックアップ・メディアに書き込まれます。

オンライン・バックアップ・リストア操作は実行中のインスタンスで実行する必要がありますが、システム全体のリストアのターゲットを操作中に実行することはできません。このため、システム全体のオンライン・バックアップ・リストア操作を実行する、InterSystems IRIS の別個のセカンダリ・インスタンスをインストールして使用可能にする必要があります。リストア中のデータベースでは、セカンダリ・インスタンスにデータベース定義もネームスペース定義も不要です。

インストーラを実行して、ターゲット・インスタンス (IrisDB-1) とは異なるインスタンス名とインストール・ディレクトリを選択することで、このリストア手順の一環としてセカンダリ・インスタンス (IrisDB-2) をインストールできます。あるいは、リストア時にこの手順を回避するには、オンライン・バックアップ方法の使用を決めたときに、セカンダリ “リストア” インスタンスをインストールします。このセカンダリ・インスタンスは常に停止状態にしておき、システム全体のバックアップの一環としてインストール・ディレクトリをバックアップしておく必要があります (つまり、これはセカンダリ・インスタンスのコールド・バックアップになります)。システム全体のリストア中に、ターゲット・インスタンスのオンライン・バックアップ・リストアを実行するために、セカンダリ・インスタンスを簡単に起動できます。

システム全体のリストア後にオンライン・バックアップまたは並行外部バックアップからリストアするには、以下の手順を実行します。

  1. データベースのセカンダリ・インスタンス (IrisDB-2) を使用し、この章の "オンライン・バックアップ・リストア・ユーティリティ" のセクションの指示に従って、以下の手順を実行します。

    1. ターゲット・インスタンスの最新のフル・バックアップをリストアします (並行外部バックアップを使用すると、ファイル・システムのリストア中にフル・バックアップが既に外部でリストアされています)。

    2. フル・バックアップの後に累積バックアップを実行している場合は、最新の累積バックアップをリストアします。累積バックアップを実行していない場合は、次の手順に進んでください。

    3. 最新の累積バックアップ (存在する場合)、または最新のフル・バックアップ (累積バックアップが存在しない場合) 以降に実行されたすべてのインクリメンタル・バックアップを、バックアップが実行された順序に従ってリストアします。

  2. データベースのセカンダリ・インスタンス (IrisDB-2) を使用し、この章の "バックアップ・リストア後のジャーナル・リストア" のセクションの指示に従います。

  3. データベースのセカンダリ・インスタンス (IrisDB-2) をシャットダウンします。

  4. この章の "自動 WIJ およびジャーナル・リカバリを使用しない InterSystems IRIS の起動" のセクションの説明に従って、ターゲット・インスタンス (IrisDB-1) を起動します。この手順では、InterSystems IRIS データベースがメンテナンス・モードで実行状態を維持するので、アプリケーションの検証やその他のメンテナンスを実行できます。

  5. 通常どおりにターゲット・インスタンス (IrisDB-1) を再起動して、ユーザがシステムにアクセスできるようにします。

Important:

非同期ミラー・メンバ上のミラーリングされているデータベースで並行外部バックアップを使用した場合、ミラーの起動後にそのデータベースを有効にする必要があります。

データベースのみのリストア

このシナリオでは、以下の開始点を想定しています。

  • リストアが実行されているシステムは、バックアップを生成したシステムであり、データベースは元の場所にリストアされます。

  • リストアが必要な一連のデータベースを特定しておきます。

  • InterSystems IRIS が起動しており、ユーザが他のデータベースに正常にアクセスしていることがあります。リストアが必要なデータベースを起動する必要がない場合があります。

  • InterSystems IRIS を完全に起動できない場合は、リストアが必要なデータベースを起動する必要があるか、または起動を妨げる破損が生じている可能性があります。

Note:

外部バックアップまたはコールド・バックアップを使用しており、リストア対象のデータベースが複数存在している場合は、InterSystems IRIS をシャットダウンしてすべての IRIS.DAT ファイルをリストアし、この章の "システム全体のリストア" のセクションの説明にあるリストア手順を実行するとより簡単です。特に IRISSYS データベースをリストアする必要がある場合は、このケースに該当します。

以下は、データベースのみのリストアを実行する方法です。

  1. データベースが起動していない場合は、この章の "メンテナンス・モードによる InterSystems IRIS の起動" のセクションの説明に従って起動します。データベースを起動すると、既存のデータベースに対する保留中の自動リカバリがあれば直ちに行われるため、今後の起動時に、リストア対象のデータベースと競合することはありません。

    既にシステムが起動しており、リストア処理中にユーザがアクセスする可能性のあるデータベースをリストアする場合は、"メンテナンス・モードによる InterSystems IRIS の起動" の説明に従って、シャットダウンおよび再起動することをお勧めします。

    以下の表に、データベースを正常に起動できない場合の問題を解決する推奨手順を示します。

    問題 解決策
    1.InterSystems IRIS が起動に失敗する

    メンテナンス・モードで InterSystems IRIS を起動すると、起動に必要なデータベースがマウントできない場合でも、システムを起動することができます。ただし、起動に必要とマークされているデータベースに自動ジャーナル・リカバリが保留されている場合は、この手順はスキップされません。

    したがって、データベースが破損しているために引き続きシステムが起動できない場合には、以下の手順を実行します。

    1. IRIS.DAT ファイルの名前を変更して、データベースにいっさいアクセスできないようにします。

    2. 構成を変更して、これらのデータベースが起動に必要とならないようにマークします。

    3. "メンテナンス・モードによる InterSystems IRIS の起動" の説明に従って、再度システムを起動します。

    2.IRISSYS データベースの損傷により InterSystems IRIS が起動できない

    一時的に IRISSYS データベースを外部バックアップからコピーしたもの、または同一バージョンの InterSystems IRIS の新しいインストールからコピーしたものに置き換えます。これは、システムを起動してリストア手順を完了するための一時的な解決策です。

    3.InterSystems IRIS が引き続き起動しない

    "システム全体のリストア" の手順に従って、すべてのデータベースをリストアすることができます。

    詳細は、インターシステムズのサポート窓口Opens in a new tabまでお問い合わせください。

  2. データベースのバックアップに使用した方法に応じて、以下の手順に従い、それぞれのデータベースをリストアします。

    使用したバックアップ方法 データベースのリストアのサブ手順
    外部バックアップまたはコールド・バックアップ

    IRISSYS 以外のすべてのデータベースに以下の手順を実行します。

    1. InterSystems IRIS からデータベースをディスマウントします。

    2. バックアップ・メディアから元の場所に IRIS.DAT ファイルをコピーします。

    3. データベースを再度マウントします。

    IRISSYS データベースをリストアする場合は、一時的に代替ディレクトリにリストアします。

    オンライン・バックアップ

    この章の "オンライン・バックアップ・リストア・ユーティリティ" のセクションの指示に従って、以下の手順を実行します。

    1. 最新のフル・バックアップをリストアします。

    2. フル・バックアップの後に累積バックアップを実行している場合は、最新の累積バックアップをリストアします。累積バックアップを実行していない場合は、次の手順に進んでください。

    3. 最新の累積バックアップ (存在する場合)、または最新のフル・バックアップ (累積バックアップが存在しない場合) 以降に実行されたすべてのインクリメンタル・バックアップを、バックアップが実行された順序に従ってリストアします。

    並行外部バックアップ

    (この表の) 外部バックアップについて記述されている手順を実行して、IRIS.DAT ファイルの “ダーティ” コピーをリストアしてから、(この表の) オンライン・バックアップについて記述されているインクリメンタル・バックアップを適用します。

  3. この章の "バックアップ・リストア後のジャーナル・リストア" のセクションの指示に従います。

  4. この章の "メンテナンス・モードによる InterSystems IRIS の起動" のセクションの説明に従って InterSystems IRIS を起動し、ユーザがシステムを使用できる状態にある場合には、通常どおりに InterSystems IRIS を停止および再起動します。再起動の前に、アプリケーションの検証やその他のメンテナンスを実行できます。

    Note:

    この表で説明されているこの手順の手順 2 のように、外部バックアップまたはコールド・バックアップから一時的な代替ディレクトリに IRISSYS データベースをリストアしている場合は、InterSystems IRIS をシャットダウンした後で (再起動する前に) 既存の IRISSYS データベースを一時ディレクトリの IRIS.DAT ファイルに置き換える必要があります。

別のシステムへのデータベースのリストア/移行

このシナリオでは、以下の開始点を想定しています。

  • 1 つ以上のデータベースがターゲット・システムにリストアされています。このターゲット・システムは、バックアップを生成したシステムとは別のシステムです。

  • ターゲット・システムでは、新しいハードウェアや異なるプラットフォームを使用することも、同一ハードウェア上で単に別の InterSystems IRIS インスタンスを稼働させることも可能です。

  • ターゲット・システムでは、ソース・システムと異なるファイル・システムのレイアウトを使用してもかまいません。

  • ターゲット・システムには既に InterSystems IRIS がインストールされています (InterSystems IRIS のインストール、または IRISSYS データベースを、ソースとは異なるターゲット・マシンにコピーすることはできません)。

このタイプのリストアの用途には、以下のようなことが挙げられます。

  • ハードウェアの移行

  • データベースをバックアップ・メンバまたは非同期ミラー・メンバに追加する ("高可用性ガイド" の “ミラーリング” の章を参照)

  • データベースを別のシステムにコピーして、開発、テスト、または配置用とする

別のシステムにデータベースをリストア/移行するには、以下の手順を実行します。

Important:

システム全体のリストアの一部でない限り、宛先システムの IRISSYS データベースをソースの IRISSYS データベースのリストアに置き換えないでください。ソースの IRISSYS データベースの必要なデータはすべて、エクスポートしてから宛先の IRISSYS データベースにインポートすることができます。

ソース・システムとターゲット・システムで使用しているエンディアンが異なる場合は、この手順の後にある “エンディアンが異なるターゲットへのリストア” のサブセクションを参照してください。ソース・システムまたはターゲット・システムでデータベース暗号化を使用している場合は、この手順の後にある “データベース暗号化に関する注意事項” のサブセクションを参照してください。

  1. まだ起動していない場合は、InterSystems IRIS を起動します。InterSystems IRIS を起動すると、既存のデータベースに対する保留中の自動リカバリがあれば直ちに行われるため、リストア対象のデータベースと競合することはありません。

    リストア処理中にユーザがアクセスする可能性のあるデータベースをリストアする場合は、この章の "メンテナンス・モードによる InterSystems IRIS の起動" のセクションの説明に従って起動する必要があります。

  2. データベースのバックアップに使用した方法に応じて、以下の手順に従い、それぞれのデータベースをリストアします。

    使用したバックアップ方法 データベースのリストアのサブ手順
    外部バックアップまたはコールド・バックアップ

    データベースをリストアするには、以下の手順を実行します。

    1. リストア対象のデータベースがターゲット・インスタンスにマウントされている場合は、すべてディスマウントします。

    2. バックアップ・メディアから目的の場所に IRIS.DAT ファイルをコピーします。

    3. 新しいデータベースがあればすべて構成に追加します。

    4. ディスマウントしたデータベースを再度マウントします。

    オンライン・バックアップ

    この章の "オンライン・バックアップ・リストア・ユーティリティ" のセクションの指示に従って、以下の手順を実行します。

    1. 最新のフル・バックアップをリストアします。

    2. フル・バックアップの後に累積バックアップを実行している場合は、最新の累積バックアップをリストアします。累積バックアップを実行していない場合は、次の手順に進んでください。

    3. 最新の累積バックアップ (存在する場合)、または最新のフル・バックアップ (累積バックアップが存在しない場合) 以降に実行されたすべてのインクリメンタル・バックアップを、バックアップが実行された順序に従ってリストアします。

    並行外部バックアップ

    (この表の) 外部バックアップについて記述されている手順を実行して、IRIS.DAT ファイルの “ダーティ” コピーをリストアしてから、(この表の) オンライン・バックアップについて記述されているインクリメンタル・バックアップを適用します。

    Important:

    リストアするデータベースがミラーリングされていて、別のシステムのデータベースである場合、インクリメンタル・バックアップを適用する前に、そのデータベースをミラーで有効にするか、ミラーから削除する (これを意図している場合) 必要があります。

  3. この章の "バックアップ・リストア後のジャーナル・リストア" のセクションの指示に従います。

    Note:

    オンライン・バックアップからリストアして、データベースをバックアップ・メンバまたは非同期ミラー・メンバに追加 ("高可用性ガイド" の “ミラーリング” の章を参照) する場合は、この手順をスキップしてください。このような場合は、ジャーナルが自動的に適用されます。

  4. この章の "メンテナンス・モードによる InterSystems IRIS の起動" のセクションの説明に従ってシステムを起動し、ユーザがシステムを使用できる状態にある場合には、通常どおりにシステムを停止および再起動します。

エンディアンが異なるターゲットへのリストア

ソース・システムと異なるエンディアン (一方がビッグ・エンディアンでもう一方がリトル・エンディアン) を使用しているターゲット・システムにバックアップをリストアするには、データベースのバックアップに使用した方法に応じて追加の手順が必要になります。サポート対象プラットフォームのエンディアンについては、このリリース用のオンライン・ドキュメント "インターシステムズのサポート対象プラットフォーム" の “プラットフォームのエンディアン” を参照してください。

データベース暗号化に関する注意事項

ターゲット・システムにデータベースをリストアする場合、リストア後のデータベースではデータベース暗号化キーの変更が必要になることがあります。データベースのバックアップに使用した方法に応じて、リストアしたデータベースのキーを以下のように変換しなければならない場合があります。

  • オンライン・バックアップの場合 — オンライン・バックアップでは、データベースの内容が暗号化せずに格納されます。ターゲット・システムにある既存の暗号化データベースにオンライン・バックアップ・ファイルをリストアする場合は、オンライン・バックアップ・リストア・ユーティリティによってターゲット・システム上でファイルが動的に暗号化されます。それ以外は、リストアしたデータベースは暗号化されません。

  • 外部バックアップコールド・バックアップ、または並行外部バックアップの場合 — ソース・システムの IRIS.DAT ファイルの状態によっては、ターゲット・システムにファイルをリストアした後にデータベース暗号化の管理が必要になる場合があります。例えば、データベース・ファイルで使用している暗号化キーがソース・システムとターゲット・システムとで異なる場合は、ターゲット・システムでソース・システムの暗号化キーを有効にする ("キー管理タスク" を参照) か、ターゲット・システムの暗号化キーを使用するように、リストアしたデータベースを変換する ("新しいキーを使用するように暗号化データベースを変換する" を参照) 必要があります。

メンテナンス・モードによる InterSystems IRIS の起動

いずれのリストア手順でも、バックアップ・リストアおよびジャーナル・リストアが完全に終了し、対象のアプリケーション・レベルの検証がすべて完了するまで、リストア中のデータベースでアプリケーションの動作が発生しないようにする必要があります。アプリケーション環境または運用環境に、データベースの起動時にユーザの操作が発生しないようなメカニズムがある場合は、そのメカニズムを利用できます。例えば、完全に Web ベースのアプリケーションを使用している場合は、Web サーバをシャットダウンすれば、リストア手順に関与している管理者のみがシステムにアクセス可能となることを保証するには十分です。

InterSystems IRIS には、メンテナンスの実行中にアクセスを制限してシステムを起動できるようにするメカニズムが用意されています。

メンテナンス・モードで InterSystems IRIS を起動するには、以下の手順で行います。

  1. すべてのメンテナンス作業時に使用する一意のユーザ名とパスワードを指定し、緊急アクセス・モードで InterSystems IRIS を起動します。このユーザ名とパスワードは、どの既存ユーザも使用していないものであることが必要です。

    • Windows の場合は、インストール先の bin ディレクトリから管理者として以下のコマンドを呼び出します。

      iris start <db-instance-name> /EmergencyId=<username>,<password>
      
    • UNIX®/Linux および macOS の各プラットフォームでは、以下のようにコマンドを呼び出します。

      iris start <db-instance-name> EmergencyId=<username>,<password>
      

    詳細は、"緊急アクセス" を参照してください。

  2. 使用しているリストアのシナリオの説明に従って、リストア手順の残りの部分を実行します。

  3. リストア手順 (あらゆるジャーナル・リストアやアプリケーションの検証などのメンテナンス作業を含む) が完了したら、以下の手順を実行して、ユーザがシステムを使用できるようにします。

    1. データベースをシャットダウンします。

    2. EmergencyId スイッチを指定せずにデータベースを起動します。

バックアップ・リストア後のジャーナル・リストア

バックアップ・リストアに続いて、ジャーナル・ファイルを適用する必要があります。この章の "ジャーナルの重要性" のセクションの説明にあるように、通常、バックアップ以降のジャーナル・ファイルをリストア時に使用できるようにしておきます。これらのジャーナル・ファイルを適用すると、バックアップの時点から災害発生時までの間にジャーナルに記述された更新がすべてリストアされます。

また、コミットされていないトランザクションをロールバックして、リストアした (不完全なトランザクションが存在する可能性がある) データベースのトランザクションの整合性をリストアするには、ジャーナルを適用する必要があります。バックアップ直前までのジャーナル・ファイルが存在し、それ以降に新しいジャーナル・ファイルが作成されていない場合でもこの作業は必要です。

Important:

少なくともバックアップ直前までのジャーナル・ファイルが存在しない場合は、いずれのジャーナル・ファイルも適用しないでください。

リストアを開始する際に、ジャーナル・リストアの開始点を選択する必要があります。ジャーナル・リストアでは、ジャーナル・ストリームをさかのぼって、バックアップよりも前に開始されたトランザクションの開始を検索することもできます。オンライン・バックアップを使用すると、推奨される開始点がバックアップに格納されます。^DBACK または ^BACKUP ユーティリティを使用してバックアップすると、リストア時のトランザクション・ロールバックに必要な最も古いジャーナル・ファイルに関する情報が 3 番目または最後のパスの開始時に表示されます。

バックアップ・リストア後のジャーナルの適用方法については、このドキュメントの “ジャーナリング” の章にある "^DBREST によるすべてのデータベースのリストア" および "ジャーナル・ファイルのリストア" のセクションを参照してください。

自動 WIJ およびジャーナル・リカバリを使用しない InterSystems IRIS の起動

この章で説明されているリストア手順の一部では、InterSystems IRIS の起動時にデータベースの自動リカバリが発生しないように起動する必要があります。これは、リストア手順でリカバリをすべて手動で実行することになっている手順で、起動時の自動リカバリとこの手動リカバリの結果に不整合が生じる可能性がある場合に当てはまります。

Caution:

この章で説明しているリストア手順は、特に以下の手順が必要となる場合を目的としています。他の条件下でこの手順を実行することはきわめて危険であり、データベースの整合性が損なわれる可能性があります。

自動 WIJ およびジャーナル・リカバリを使用せずに InterSystems IRIS を起動するには、以下の手順で行います。

  1. IRIS.WIJ ファイルを取り除き (ただし完全に削除はしません)、以下のように引き続き分析に使用できるようにします。

    1. 管理者ディレクトリに格納されている startup.last ファイルの wijlast= 行を確認します。

    2. この行で指定されているディレクトリに格納されている IRIS.WIJ ファイルを移動するか、名前を変更します。NULL ディレクトリが指定されている場合、IRIS.WIJ ファイルは管理者ディレクトリに格納されています。

  2. すべてのメンテナンス作業時に使用する一意のユーザ名とパスワードを指定し、緊急アクセス・モードで InterSystems IRIS を起動します。このユーザ名とパスワードは、どの既存ユーザも使用していないものであることが必要です。

    • Windows の場合は、InterSystems IRIS インストールの bin ディレクトリから以下のようにコマンドを呼び出します。

      iris start <iris-instance-name> /EmergencyId=<username>,<password>
      
    • UNIX®/Linux および macOS の各プラットフォームでは、以下のようにコマンドを呼び出します。

      iris start <iris-instance-name> EmergencyId=<username>,<password>
      

    詳細は、"緊急アクセス" を参照してください。

  3. ほとんどの場合、WIJ 内のジャーナル・リカバリ情報が失われているため、InterSystems IRIS は完全には起動しません。InterSystems IRIS が正常に起動する場合は、この手順の残りはスキップしてください。

  4. messages.log の指示に従って、-B オプションを選択して InterSystems IRIS に入り、do ^STURECOV を実行します。

    1. オプション 8 を選択して、ジャーナル・リカバリを使用しないで起動するように InterSystems IRIS をリセットします。

    2. オプション 9 を選択して、InterSystems IRIS をシャットダウンします (表示される手順を使用)。

  5. 手順 2 の説明に従って、再度 InterSystems IRIS を緊急アクセス・モードで起動します。

  6. 使用しているリストアのシナリオの説明に従って、リストア手順の残りの部分を実行します。

  7. リストア手順 (あらゆるジャーナル・リストアやアプリケーションの検証などのメンテナンス作業を含む) が完了したら、以下の手順を実行して、ユーザがシステムを使用できるようにします。

    1. InterSystems IRIS をシャットダウンします。

    2. EmergencyId (Windows プラットフォームの場合は /EmergencyId) スイッチを使用しないで InterSystems IRIS を起動します。

オンライン・バックアップ設定の構成

オンライン・バックアップは、実装可能なバックアップ方法の一つです。サポートされている方法およびその最適な使用法については、この章の "バックアップの方法" のセクションを参照してください。

管理ポータルの [システム管理]→[構成]→[データベースバックアップ] メニューの選択肢を使用して、オンライン・バックアップの設定を構成できます。これらのタスクの一部は、Backup.GeneralOpens in a new tab クラスのメソッドを使用しても実行できます。適切なメソッドがある場合は、ここで紹介しています。

オンライン・バックアップが完了すると、バックアップの説明がバックアップ履歴に書き込まれます ("バックアップ履歴の表示" を参照)。これにより、[ジャーナル設定] ページの [ジャーナルファイルを削除するタイミング] > [この回数のバックアップ成功後] の設定 (既定値は 2) によっては、ジャーナルの削除がトリガされる可能性があることに注意してください。詳細は、このドキュメントの “ジャーナリング” の章の "ジャーナル設定の構成" を参照してください。

システム管理ポータルから、次の構成タスクを実行できます。

Note:

この構成タスクは、管理ポータル・アプリケーションの管理部分にあります。バックアップの設定を構成するには、適切なマネージャレベルのセキュリティ権限が必要です。

データベース・バックアップ・リストの定義

InterSystems IRIS では、バックアップの対象となるデータベースを指定するデータベース・リストが管理されます。このリストは、管理ポータルの [システム管理][構成][データベースバックアップ][データベース・バックアップ・リスト] ページに移動すると表示できます。

矢印ボタンを使用して、バックアップ しない データベースを [使用可能] リストに移動し、バックアップ する データベースを [選択済み] リストに移動します。[保存] をクリックします。どのデータベースも選択していない場合は、すべてのデータベースがバックアップされます。

システムに新規データベースを追加すると、そのデータベースはデータベース・リストに自動的に追加されます。その新規データベースがバックアップ対象でない場合は、[バックアップ・データベース・リスト] から必ず削除してください。

Note:

IRISTEMPIRISLIB、および IRISLOCALDATA のデータベースを除くすべてのデータベースのバックアップを実行する FullAllDatabases バックアップ・タスクでは、定義されたデータベース・リストが無視されます。

バックアップ・データベース・リストは、^BACKUP ルーチンまたは Backup.General.AddDatabaseToList()Opens in a new tab メソッドおよび Backup.General.RemoveDatabaseFromList()Opens in a new tab メソッドを使用して管理することもできます。これらのメソッドの使用法に関する詳細は、"インターシステムズ・クラス・リファレンス" の "Backup.GeneralOpens in a new tab" クラスの説明を参照してください。

バックアップ・タスクの構成

InterSystems IRIS には、複数のタイプのバックアップ・タスクがあります。各タイプは、[データベースバックアップ設定] メニューの項目として表示されます。このバックアップ・タスクの構成とは、以下のとおりです。

  • すべてのデータベースのフル・バックアップの構成

  • データベース・リストのフル・バックアップの構成

  • データベース・リストのインクリメンタル・バックアップの構成

  • データベース・リストの累積バックアップの構成

これらは、あらかじめ定義されたバックアップ・タスクで、ポータルの [システム処理][バックアップ] ページから必要に応じて実行できます。タスク・マネージャを使用することで、これらのバックアップ・タスクを組み合わせてスケジュールすることもできます。詳細は、この章の "バックアップ・タスクのスケジュール" を参照してください。

これらの各タスクを構成する手順は同じです。[名前][説明]、および [タイプ] の各フィールドは読み取り専用であり、以下のテーブルで説明するように、選択したメニュー項目のものを反映します。

バックアップ・タスクの説明
名前 説明 タイプ
FullAllDatabases [バックアップ・データベース・リスト] に記載されているかどうかに関係なく、共通に更新されるすべてのデータベースのフル・バックアップを実行します。 フル
FullDBList [バックアップ・データベース・リスト] 内の InterSystems IRIS データベースのフル・バックアップを行います。 フル
IncrementalDBList 最後のフル・バックアップまたは累積バックアップ以降のデータ変更のインクリメンタル・バックアップを実行します。[バックアップ・データベース・リスト] に記載されているデータベースがバックアップされます。 インクリメンタル
CumuIncrDBList 最後のフル・バックアップ以降にデータに加えられたすべての変更の累積バックアップおよびインクリメンタル・バックアップ。[バックアップ・データベース・リスト] に記載されているデータベースがバックアップされます。 累積

ディスク上のディレクトリにバックアップ出力を送信するには、[デバイス] フィールドでファイルのパス名を指定します。[参照] をクリックして、ディレクトリを選択します。

[バックアップ・データベース・リスト] の管理方法の詳細は、"データベース・バックアップ・リストの定義" を参照してください。

バックアップ・ファイル名

既定の場合、バックアップ・ファイルは install-dirOpens in a new tab\Mgr\Backup に格納されます。バックアップ・ログ・ファイルは同じディレクトリに格納されます。バックアップ・ファイルの接尾語は .cbk です。バックアップ・ログ・ファイルの接尾語は .log です。

バックアップ・ファイルとバックアップ・ログ・ファイルには、同じ名前付け規約を使用します。

  • バックアップ・タスク名の後にはアンダースコア文字 (_) が続きます。

  • yyyymmdd 形式のバックアップ日付の後には、アンダースコア文字 (_) が続きます。

  • バックアップ・タスクの開始時にトリガされたジャーナル切り替え後の、新しいジャーナル・ファイル名の数字の接尾語 nnn (“ジャーナリング” の章の "ジャーナル・ファイルの切り替え" を参照)

  • .log.cbk 接尾語を使用します。

例えば、FullDBList バックアップ・タスクによって切り替えがトリガされた後の新しいジャーナル・ファイルに 20211031.003 という名前が付けられる場合、バックアップ・ファイルの名前は FullDBList_20211031_003.cbk、バックアップ・ログ・ファイルの名前は FullDBList_20211031_003.log になります。

バックアップ・タスクのスケジュール

バックアップの実行スケジュールは、適切に設定する必要があります。バックアップは、システムを利用しているユーザが可能な限り少ない時間に実行します。

既定のタスクとして提供され、必要に応じて実行される 4 種類のバックアップ・タスクのほかに、これら 4 つのバックアップ・タスクに追加してバックアップ定義を作成できます。例えば、2 つのディスク・ドライブ間でバックアップする代わりに、ドライブごとにバックアップ・タスクを生成できます。

これらのバックアップ・タスクをスケジュールするには、インターシステムズのタスク・マネージャを使用します。

  1. 管理ポータルで、[タスクスケジューラウィザード] に移動します ([システム処理][タスクマネージャ][新規タスク])。

  2. [新規タスクスケジュール] をクリックします。

  3. [タスク名][説明][タスクタイプ] を指定して、既定値に変更を加えてから [次へ] をクリックします。

  4. 必要なスケジュール情報を入力して、[完了] をクリックします。

これで、[タスクスケジュール表示] ページ ([システム処理][タスクマネージャ][タスクスケジュール表示]) に目的のタスクを表示できるようになります。このタスクは、その行の [詳細] をクリックすることで他のタスクと同様に管理できます。

オンライン・バックアップの管理

オンライン・バックアップは、実装可能なバックアップ方法の一つです。サポートされている方法およびその最適な使用法については、この章の "バックアップの方法" のセクションを参照してください。

オンライン・バックアップは、管理ポータルとインターシステムズの ^BACKUP ユーティリティのいずれからでも管理できます。ここでは、ポータルでの手順を中心に説明し、必要に応じてユーティリティ使用の手順が記載されたセクションを紹介します。

データベースのバックアップ・タスクの実行とバックアップ履歴の表示は、管理ポータルの [システム処理][バックアップ] ページで行えます。タスク・マネージャを使用して別のバックアップ・タスクのスケジュールを設定する場合は、管理ポータルの [システム処理][タスクマネージャ][タスクスケジュール] ページで管理できます。

システム管理ポータルからは、次のバックアップ・タスクを実行できます。

システムに新規データベースを追加する場合は、フル・バックアップを実行する必要があります。インクリメンタル・バックアップを実行できるのは、フル・バックアップが存在するようになってからです。インクリメンタル・バックアップや累積バックアップの機能の使用を計画している場合は、バックアップ・データベース・リストを管理して、そのリストのフル・バックアップを実行する必要があります。

インストール後、FullDBList バックアップを実行して完全なバックアップを作成しておき、その後の他のバックアップ・タスクで使用できるようにすることをお勧めします。

Note:

これらのバックアップ・タスクは、管理ポータル・アプリケーションの処理部分にあります。バックアップ・タスクを実行するには適切なオペレータレベルのセキュリティ権限が必要です。

バックアップ・タスクの実行

管理ポータルの [バックアップ] メニュー・オプション ([システム処理][バックアップ]) では、4 つのタイプのバックアップ・タスクを実行でき、それぞれのタスクに専用のメニュー項目があります。

  • すべてのデータベースのフル・バックアップの実行

  • バックアップ・データベース・リストのフル・バックアップの実行

  • バックアップ・データベース・リストのインクリメンタル・バックアップの実行

  • バックアップ・データベース・リストの累積バックアップの実行

インクリメンタル・バックアップや 累積 バックアップの前には、データベースの フル バックアップを実行する必要があります。オンライン・バックアップを実行する手順は以下のとおりです。

  1. 適切なバックアップ・タイプのメニュー項目をクリックします。

  2. [実行バックアップ・タスク] ボックスの設定が正しいかどうかを確認します。

  3. バックアップ・オプションが正しければ、[OK] をクリックしてバックアップを開始します。

    バックアップ・オプションが適切でない場合は、"オンライン・バックアップ設定の構成" の手順に従って更新してください。

  4. バックアップの実行中は、[開始済みのバックアップ] の横のテキストをクリックすると、実行中のバックアップのステータスを表示できます。詳細は、"バックアップ・ステータスの表示" を参照してください。

^BACKUP ユーティリティから 1) Backup オプションを選択するか、^DBACK ユーティリティを実行することによって、最近実行された直前 3 回までのバックアップ・タスクを実行することもできます。詳細は、“^DBACK によるデータベースのバックアップ” を参照してください。

マルチボリューム・バックアップ

バックアップには、複数のディスク・ファイルが必要になる場合があります。現時点では、管理ポータルでマルチボリューム・バックアップを実行することはできません。マルチボリューム・バックアップが必要な場合は、^BACKUP ユーティリティを使用してください。ディスクがいっぱいになった場合、^BACKUP によって、別のディスク上の別のディスク・ファイル名を入力するように要求されます。

バックアップ中にエラーが発生した場合は、その後に続くボリュームからバックアップを再開することはできません。バックアップを最初から実行する必要があります。

これらのタスクを実行する前に、バックアップのサイズを見積もる方法については、“^DBSIZE によるバックアップ・サイズの見積もり” を参照してください。

バックアップ・ステータスの表示

バックアップ処理の進行状況を監視するには、[システム処理][バックアップ] ページの [バックアップステータス参照] をクリックするか、実行中のバックアップ・プロセスの [表示] をクリックします。それと同じ情報が、バックアップ処理のログ・ファイルにも記録されます。後で、[バックアップ履歴の表示] ページでこのログ・ファイルを表示できます。

バックアップを開始すると、リストの [日時] 列と [状態] 列が更新されます。[日時] 列には、バックアップの完了時ではなく、開始日時が記録されます。[状態] 列は、「実行中」と表示されます。

バックアップの終了時、再度 [状態] 列が更新され、バックアップの最終的な状態が表示されます。以下に例を示します。

  • 完了」は、バックアップが成功したことを示します。

  • Failed」は、バックアップが実行されなかったこと、またはユーザによって停止されたことを示します。

  • 警告」は、途中で問題が発生したが、完了したことを示します。

対応するバックアップ・ログには、有益な情報が記載されています。タスクの横にある [ビュー] をクリックすると、バックアップ・ログが表示されます。

次の “実行中のバックアップの中止” では、実行中のバックアップに表示されるその他のオプションについて説明します。

実行中のバックアップの中止

実行中のバックアップを中止するには、以下の 3 つの方法を使用できます。

バックアップ履歴の表示

バックアップ処理ごとに、独立したバックアップ・ログ・ファイルが生成されます。ログは、"バックアップ・ファイル名" で説明した名前付け規約に従います。

このポータルから、完了したバックアップ・タスクのシステム・バックアップ・ログのリストを表示できます。

  1. 管理ポータルの [システム処理][バックアップ] ページに移動します。

  2. 右側の列の [バックアップ履歴の表示] をクリックして、[バックアップ履歴] ページを表示します。このページには、完了したバックアップに関する情報が一覧表示されます。

  3. 特定のバックアップの結果を表示するには、該当する行の右側の列の [ビュー] をクリックします。バックアップ・ログ・ファイルの内容を表示し、そのファイル内の文字列を検索できます。

バックアップ・エラー

バックアップで入出力エラーが発生した場合、バックアップは中止され、バックアップ・ログ・ファイルにシステム・エラーが記録されます。これらのログ・ファイルに記録された情報を使用すると、問題の発生個所をすばやく確認し、修正できます。

バックアップが失敗する原因の 1 つは、ディスマウントされているデータベースでバックアップを実行しようとしたことです。バックアップ中にエラーが発生すると、バックアップ・ユーティリティにより、エラーが発生したデバイスでのバックアップを再試行できます。または、バックアップを中止することもできます。

オンライン・バックアップ・ユーティリティ

InterSystems IRIS には、バックアップ・タスクを実行するためのユーティリティが用意されています。^BACKUP ルーチンには、共通のバックアップ手順を実行するためのメニュー項目があります。これらのバックアップ手順は、単独で実行することもでき、場合によっては、スクリプトを使用して、非インタラクティブに実行することもできます。

ユーティリティ名は、大文字と小文字を区別します。これらのユーティリティはすべて、%SYS ネームスペースから実行します。

InterSystems IRIS では、最終バックアップ以降に変更されたデータベース・ブロックのビットマップ・リストが保管されます。このリストは、バックアップ・ステージにおけるデータベース更新の追跡に利用できます。^DBSIZE ユーティリティは、これらのビットマップを調べ、バックアップのサイズの計算に利用できます。InterSystems IRIS ^BACKUP ユーティリティは、これらのリストのマルチパス・スキャンを使用して最終パス以降に変更されたブロックのみをバックアップします。

^DBSIZE によるバックアップ・サイズの見積もり

InterSystems IRIS バックアップの実行直前に、^DBSIZE ユーティリティを使用して、出力のサイズを見積もることができます。バックアップが開始されると、変更されるブロック数を認識する手段がないため、このサイズは単なる推定値です。^DBSIZE 実行中にグローバル更新が行われないようにして、グローバル更新の再開前にバックアップを実行すると、取得される見積もりの精度がさらに向上します。

以下の 2 つの方法で、バックアップ・サイズを指定できます。

Note:

データベースを ^DBSIZE で評価できるようにするには、データベース・バックアップ・リストに含まれている必要があります。詳細は、"データベース・バックアップ・リストの定義" を参照してください。

^DBSIZE のインタラクティブな実行

以下では、^DBSIZE をインタラクティブに実行するために必要な手順を説明します。

  1. ターミナルを開いて、%SYS ネームスペースからユーティリティを実行します。

    %SYS>Do ^DBSIZE
    
    
  2. InterSystems IRIS に、以下のような ^DBSIZE メイン・メニューが表示されます。

                   Incremental Backup Size Estimator
     
     
    What kind of backup:
       1. Full backup of all in-use blocks
       2. Incremental since last backup
       3. Cumulative incremental since last full backup
       4. Exit the backup program
    1 => 
    
    
  3. 適切なメニュー・オプションを入力して、見積もりが必要なバックアップのタイプを full (フル)、incremental (インクリメンタル)、または cumulative (累積) から選択します。このプロンプトは各タイプで同じです。

  4. 次のプロンプトで、更新を一時停止して見積もりの精度を上げる場合は Enter キーを押し、更新を許可する場合は「No」を入力します。

    Suspend Updates?  Yes=>
    

    更新の一時停止を選択した場合は、以下のメッセージが表示されます。

    WARNING: Switch is set and may affect production for up to 30 seconds.
    Waiting for disk cleanup to finish... ready.
    
  5. 出力の最初に、選択したバックアップ・タイプに応じて実行が必要な InterSystems IRIS ブロック数が表示されます。バックアップ・リストに記載されたディレクトリ別の見積もりと合計が表示されます。以下は、フル・バックアップの場合の表示例です。

    
                                                         In-Use    Block
    Directory                                            Blocks    Size
    
    c:\iris-install\mgr\                                  19,963   (8KB)
    c:\iris-install\mgr\irisaudit\                           189   (8KB)
    c:\iris-install\mgr\user\                                 61   (8KB)
                                                          --------------
     Total number of database blocks:                     36,228
    
    

    インクリメンタル・バックアップと累積バックアップの表示は、以下のようになります。

    
                                                         Modified  Block
    Directory                                            Blocks    Size
     
    c:\iris-install\mgr\                                       5   (8KB)
    c:\iris-install\mgr\irisaudit\                             3   (8KB)
    c:\iris-install\mgr\user\                                  1   (8KB)
                                                        - --------------
    Total number of database blocks:                          10
    
    
  6. その後に、バックアップ・ディスク・ファイルの領域に関する情報が表示されます。

    Total backup size, including overhead of volume and pass labels:
     
         For a disk file:
              Number of 512-byte blocks:  598,092  (306,223,104 bytes)
    

^DBSIZE 関数の使用

ルーチンから ^DBSIZE を呼び出すこともできます。このためには、以下の関数を使用します。

$$INT^DBSIZE(backup_type)
Important:

^DBSIZE をインタラクティブに実行している場合、backup_type の値はメニュー・オプションの番号と異なります。

バックアップ・タイプ 説明
1 インクリメンタル・バックアップ
2 フル・バックアップ
3 累積インクリメンタル・バックアップ

例えば、フル・バックアップ実行のサイズ見積もりを確認する場合は以下のようになります。

%SYS>w $$INT^DBSIZE(2)
18950^5^160952320^2710^160309248^313104^313104

返り値は、キャレット (^) で区切られた 7 つの数字です。この例で、返り値 18950 は、ブロック単位のバックアップの合計見積もりサイズで、5 はバックアップ対象のデータベース・ディレクトリ数を示しています。下表は、出力の各部の内容を示しています。

出力位置 説明
部分 1 バックアップ対象のデータベース・ブロック数。

(処理中にエラーが発生した場合、または無効なパラメータがある場合は -1)

部分 2 バックアップ対象のディレクトリ数。
部分 3 メディアのバイト数 (レコード間ギャップは除外)。
部分 4 メディアのブロック数。
部分 5 ディスク・ファイルのバイト数。
部分 6 ディスク・ファイルの 512 バイト・ブロック数。

以下は、各タイプのバックアップで ^DBSIZE 関数を呼び出したときの出力を示しています。

%SYS>w $$INT^DBSIZE(1)
466^5^4157440^70^4122624^8052^8052

%SYS>w $$INT^DBSIZE(2)
18950^5^160952320^2710^160309248^313104^313104

%SYS>w $$INT^DBSIZE(3)
466^5^4157440^70^4122624^8052^8052

^BACKUP によるバックアップおよびリストアのタスクの実行

InterSystems IRIS ^BACKUP ユーティリティによって、以下の例に示すように、中央メニューから InterSystems IRIS のバックアップおよびリストアのタスクを実行できます。

%SYS>Do ^BACKUP
 
 
1) Backup
2) Restore ALL
3) Restore Selected or Renamed Directories
4) Edit/Display List of Directories for Backups
5) Abort Backup

6) Display Backup volume information
7) Monitor progress of backup or restore

Option?

対応するルーチンを開始するには、適切なメニューのオプション番号を入力します。ユーティリティを終了するには、オプションの番号を入力せずに Enter キーを押します。

このドキュメントの以降のセクションでは、対応するオプションを選択することによって開始されるユーティリティについて説明します。

  1. ^DBACK によるデータベースのバックアップ

  2. ^DBREST によるすべてのデータベースのリストア

  3. ^DBREST による選択したデータベースのリストア

  4. ^BACKUP によるバックアップに必要なディレクトリ・リストの編集/表示

  5. ^BACKUP による実行中のバックアップの中止

  6. ^BACKUP によるバックアップ・ボリュームに関する情報の表示

  7. ^BACKUP によるバックアップまたはリストアの進行状況の監視

^DBACK によるデータベースのバックアップ

インターシステムズの ^DBACK ユーティリティによって、InterSystems IRIS データベースをバックアップできます。^DBACK ユーティリティの実行は、^BACKUP ユーティリティ・メニューからオプション 1 を選択した場合と同じです。以下は、ターミナルからユーティリティを実行する場合の例です。

  1. まず、データベース・バックアップ・リストが定義されていることを確認し、バックアップ・ファイルの出力デバイスを選択します。

  2. %SYS ネームスペースから、^DBACK ルーチンを実行します。

    %SYS>Do ^DBACK
     
     
                          Backup Utility
                  --------------------------
    What kind of backup:
       1. Full backup of all in-use blocks
       2. Incremental since last backup
       3. Cumulative incremental since last full backup
       4. Exit the backup program
    
    
  3. 対応するメニュー・オプション番号を入力して、実行するバックアップ・タイプ (フル、インクリメンタル、または累積) を選択します。バックアップ実行手順は、すべてのタイプで共通です。

  4. 出力デバイスとバックアップの内容を入力します。

    Specify output device (type STOP to exit)
    Device: c:\iris-install\mgr\backup\FullDBList_20081201_003.cbk =>
    
    Backing up to device: c:\iris-install\mgr\backup\FullDBList_20081201_003.cbk
    Description: Full Backup using ^DBACK
    
    

    前回のバックアップのデバイスが既定として取得されます。この例では、オンライン・バックアップ・デバイスの形式を使用しています。

  5. 次に、バックアップ対象のデータベース・ディレクトリのリストが表示されます (データベース・バックアップ・リストに記載されているもの)。以下に例を示します。

     Backing up the following directories:
     c:\iris-install\mgr\
     c:\iris-install\mgr\irisaudit
     c:\iris-install\mgr\user\
     
    
    
  6. Y」で応答するとバックアップが開始されます。ジャーナル・ファイルが切り替わり、バックアップの進捗状況が表示されます。

    Start the Backup =>  [answer Y or N] => y
    Journal file switched to:
    c:\iris-install\mgr\journal\20081201.004
    . 
    Starting backup pass 1
    
  7. 3 番目または最後のパスの開始時に、バックアップをリストアするときのトランザクション・ロールバックに必要な最も古いジャーナル・ファイルに関する情報が表示されます。次に例を示します。

    Starting backup pass 3
     
    Journal file 'c:\intersystems\test62\mgr\journal\20180919.003' and the subsequent ones
    are required for recovery purposes if the backup were to be restored
     
    Journal marker set at
    offset 197180 of c:\intersystems\test62\mgr\journal\20180919.003
    

    この情報はバックアップ・ログに記録されます。

  8. バックアップが正常に完了すると、以下のように表示されます。

    ***FINISHED BACKUP***
     
    Global references are enabled.
     
    Backup complete.
     
    %SYS>
    
    Note:

    バックアップが正常に完了すると、^DBACK がバックアップの説明をバックアップ履歴に書き込みます ("バックアップ履歴の表示" を参照)。これにより、[ジャーナル設定] ページの [ジャーナルファイルを削除するタイミング] > [この回数のバックアップ成功後] の設定 (既定値は 2) によっては、ジャーナルの削除がトリガされる可能性があることに注意してください。詳細は、このドキュメントの “ジャーナリング” の章の "ジャーナル設定の構成" を参照してください。

次の “^DBACK に対する外部エントリ・ポイント” では、指定されたエントリ・ポイントを使用してこのユーティリティを外部のバックアップ・プロシージャから呼び出す方法を説明します。

^DBACK に対する外部エントリ・ポイント

^DBACK ユーティリティに対して指定されたエントリ・ポイントは、外部バックアップ・プロシージャで使用できます。バックアップの整合性確保のため、このポイントは説明されたとおりに使用する必要があります。エントリ・ポイントはすべて、正常完了の場合は 1 を返し、失敗の場合は0 を返します。^DBACK ルーチンでは、以下の外部エントリ・ポイントを使用できます。

BACKUP^DBACK

このプロシージャによってバックアップが起動され、^DBACK のインタラクティブな実行の際に示される質問に対しては、渡された引数を使用して応答します。

BACKUP^DBACK(argfile,TYPE,DESC,OUTDEV,kiljrn,LOGFILE,MODE,clrjrn,swjrn,
nwjrnfil,quietimeout,taskname)

大文字で示された引数は、今回の InterSystems IRIS リリースのバックアップ・プロシージャで最も重要な引数です。ジャーナリング・メカニズムが変更されているため、バックアップ・ユーティリティでは、現在のジャーナル・ファイルの削除、現在のジャーナル・ファイルのクリア、および新しいジャーナル・ファイル名の指定はできなくなりました。このため、今回のバージョンの InterSystems IRIS では、次の表に示されるように多数の引数が無視されます。

引数 説明
argfile 使用できなくなりました。必ず NULL 値を使用します。
TYPE バックアップのタイプ (必須)

値 :

I — インクリメンタル

C — 累積

F — フル

E — サードパーティ、またはオペレーティング・システムのバックアップ・ユーティリティによる外部フル・バックアップ。

DESC バックアップ・ラベルおよびバックアップ履歴グローバルに保存されている説明。空白が許容される自由形式のテキスト文字列。

外部 (タイプ E) のバックアップでは、次の表の引数が無視されます。この表では、他のタイプのバックアップで無視されるか必須であるかについても記載されています。

引数 説明
OUTDEV バックアップの出力ファイル名 (必須)。
kiljrn ジャーナル・ファイルを切り替えるかどうかを指定します。

Y — ジャーナル・ファイルを切り替えます (推奨)。

N — 切り替えません。

(現在のジャーナル・ファイルを削除することはできなくなりました。)

LOGFILE ログに記録するかどうか、および関数の出力を書き込むかどうかを指定します。

ファイル名 —ターミナルに送信されるすべてのメッセージをこのファイルに書き込みます (推奨)。

Null 値 — ログファイルがありません。

MODE プロシージャの実行時にターミナルに書き込まれる出力を指定します。ログ・ファイルに書き込まれる内容を制御するものではありません。

値 :

“NOISY” — ターミナルのすべてのテキストを書き込みます (既定)。

“QUIET” — 異常な状態に関係するテキストのみを書き込みます。

“NOINPUT” — このプロセスにアタッチされたターミナルがないため、出力は送信されません。読み取りが必要な場合は、バックアップが中止されます。

clrjrn ジャーナル・ファイルを切り替えるかどうかを指定します。

Y — ジャーナル・ファイルを切り替えます (推奨)。

N — 切り替えません。

(現在のジャーナル・ファイルを消去することはできなくなりました。)

swjrn ジャーナル・ファイルを切り替えるかどうかを指定します。

Y — ジャーナル・ファイルを切り替えます (推奨)。

N — 切り替えません (clrjrn 引数または kiljrn 引数の値が Y である場合、swjrn は Y に変換し、ジャーナル・ファイルが切り替えられます)

nwjrnfil (無視)

以下は、2 つのオプションの引数です。

引数 説明
quietimeout システムが停止するまで待機する秒数。この秒数を経過するとバックアップが中止されます。ゼロ (0) または負の値は、無限に待機することを示します (既定 = 60)。
taskname バックアップ・タイプ FI、および C の場合に内部で使用されるタスク名。

これらの外部エントリ・ポイントを使用するには、すべてのモードで ^SYS グローバルへの読み取り/書き込みアクセス権が必要です。外部 (タイプ E) バックアップでは、^SYS グローバル内のディレクトリの .IND ファイル、.INE ファイル、および .INF ファイルが削除されます。また、ルーチンによって、このバックアップが LASTFULL バックアップであるという説明と共にバックアップ履歴グローバルに記録されます。

このルーチンを呼び出す際に、スイッチ 10 を設定している場合は、バックアップ全体を通じてこの設定が保持されます。スイッチ 13 を設定している場合、バックアップで必要な Set および Kill コマンドが実行される間はプロシージャによってスイッチ 10 に変換され、終了時にスイッチ 13 に復元されます。

このルーチンは、このエントリ・ポイントによって定義された変数に対しては New コマンドを実行しますが、^DBACK プロシージャの本体内で定義された変数では実行しません。このため、^DBACK の呼び出し前に呼び出されるすべてのルーチンで、その他のすべての変数を慎重に保護する必要があります。

返り値 :

  • 0 — 失敗しました。ログ・ファイルを指定している場合はこのファイルを確認してください。

  • 1 – 成功

  • 1, warning message string — 成功しましたが、警告があります。この警告は、文字列内でチルダ文字 (~) によって区切られています。

LISTDIRS^DBACK

このプロシージャは、出力ファイルを開き、バックアップに含まれるデータベース・ディレクトリに関するリストを書き込みます。リストが空白の場合は、すべてのデータベース・ディレクトリ (IRISTEMPIRISLIB、および IRISLOCALDATA を除く) がプロシージャによってバックアップされます。この関数の形式は以下のとおりです。

LISTDIRS^DBACK(file,mode)
引数 説明
file 関数がバックアップ・リスト内のデータベース・ディレクトリのリストを書き込む出力ファイルの名前。
mode このプロシージャの実行時にターミナルに書き込まれる出力内容を指定します。

“QUIET” — 返り値、および異常な状態に関係するテキストのみを表示します。

その他のすべての値 — ターミナルにディレクトリ・リストを表示します。

以下は、ターミナルに表示される出力の表示例です。

%SYS>w $$LISTDIRS^DBACK("c:\temp\listdirs.txt","NOISY")
 
List of directories to be backed up
     c:\iris-install\mgr\irisaudit\
     c:\iris-install\mgr\irislib\
     c:\iris-install\mgr\
     c:\iris-install\mgr\user\
1
%SYS>

このプロシージャに関する注意事項は以下のとおりです。

  • ^SYS グローバルに対する読み取りアクセス権が必要です。

  • スイッチの設定やクリアは行われません。

  • すべてのローカル変数に対して New コマンドを発行します。

CLRINC^DBACK (並行外部バックアップの場合のみ)

このプロシージャを呼び出すと、バックアップ・リスト内のデータベースで変更されているブロックを示すインクリメンタル・バックアップ・ビットマップがクリアされます。同時に、先にフル・バックアップを実行しなければあらゆる種類のバックアップが実行できなくなるため、バックアップ履歴も削除されます。このプロシージャは、InterSystems IRIS 実行状態での外部フル・バックアップの実行前に使用することを目的としています。InterSystems IRIS がダウンした状態で外部バックアップを実行する場合は、システムのシャットダウン前にこのエントリ・ポイントを呼び出します。この関数の形式は以下のとおりです。

CLRINC^DBACK(mode)
引数 説明
mode このプロシージャの実行時にターミナルに書き込まれる出力内容を指定します。

“QUIET” — 返り値、および異常な状態に関係するテキストのみを表示します。

その他のすべての値 — ディレクトリの処理時にその名前を表示します。

例 :

%SYS>w $$CLRINC^DBACK("QUIET")
1
%SYS> 

%SYS>Do CLRINC^DBACK("NOISY")
 
     Cleared incremental backup bitmap in c:\iris-install\mgr\
     Cleared incremental backup bitmap in c:\iris-install\mgr\irisaudit\
     Cleared incremental backup bitmap in c:\iris-install\mgr\user\
%SYS>

このプロシージャに関する注意事項は以下のとおりです。

  • ^SYS グローバルに対する読み取り/書き込みアクセス権が必要です。

  • スイッチ 13 の状態を記録し、設定されていない場合は設定して、終了時に元の状態に復元します。

  • メイン・バックアップ・プロシージャで定義されたものを除き、すべてのローカル変数に対して New コマンドを発行します。

  • このルーチンの呼び出し時にディスマウントされていたディレクトリは、ディスマウントされた状態で保持されます。

^BACKUP によるバックアップに必要なディレクトリ・リストの編集/表示

Important:

データベースのリストを編集する場合は、ディレクトリ名ではなくデータベース名を使用します。これは管理ポータルでバックアップを構成する場合と同様です。

InterSystems IRIS の ^BACKUP ユーティリティのオプションを使用すると、InterSystems IRIS データベースのバックアップや、既に作成されたバックアップのリストアができます。データベースのリストが作成されていない場合は、すべてのデータベースがバックアップ対象となります。リストを作成すると、スクリプト化されたバックアップの ^BACKUP ユーティリティのエントリ・ポイントの呼び出しも含めて、InterSystems IRIS バックアップ・システムのすべてに適用されます。

以下の例は、メニューの各オプションからの出力サンプルです。

  1. ^BACKUP メニューから、オプション 4 を選択して、データベース・バックアップ・リストの管理メニューを表示します。

    %SYS>Do ^BACKUP
     
     
    1) Backup
    2) Restore ALL
    3) Restore Selected or Renamed Directories
    4) Edit/Display List of Directories for Backups
    5) Abort Backup
    6) Display Backup volume information
    7) Monitor progress of backup or restore
     
    Option? 4
     
    1) Add a database to the backup
    2) Remove a database from the backup
    3) Show current list of databases included in backups
    4) Show list of available databases
    5) Display last full backup information
    
    
  2. リストにデータベースを追加するには、オプション1 を選択します。この例では、データベースが現在のリストに追加されたことを示すため、オプション 3 も使用しています。

    1) Add a database to the backup
    2) Remove a database from the backup
    3) Show current list of databases included in backups
    4) Show list of available databases
    5) Display last full backup information
     
    Option? 1
    Enter database to add? DATA
    Enter database to add?
    You've selected DATA to be added to the backups
    Are you sure you want to do this (yes/no)? y
    Completed.
     
    1) Add a database to the backup
    2) Remove a database from the backup
    3) Show current list of databases included in backups
    4) Show list of available databases
    5) Display last full backup information
     
    Option? 3
    The following 3 databases are included in backups
         IRISAUDIT               C:\iris-install\Mgr\irisaudit\
         IRISSYS                 C:\iris-install\Mgr\
         USER                    C:\iris-install\Mgr\User\
    
    
  3. リストのデータベースを削除するには、オプション 2 を選択します。この例では、データベースが現在のリストから削除されたことを示すため、オプション 3 も使用しています。

    1) Add a database to the backup
    2) Remove a database from the backup
    3) Show current list of databases included in backups
    4) Show list of available databases
    5) Display last full backup information
     
    Option? 2
    Enter database to remove (^ when done)?  DATA
    Enter database to remove (^ when done)?
    You've removed DATA from the backups
    Are you sure you want to do this? y
    Completed.
     
    1) Add a database to the backup
    2) Remove a database from the backup
    3) Show current list of databases included in backups
    4) Show list of available databases
    5) Display last full backup information
    
    Option? 3
    The following 3 databases are included in backups
         IRISAUDIT          C:\iris-install\Mgr\irisaudit\
         IRISSYS            C:\iris-install\Mgr\
         USER               C:\iris-install\Mgr\User\
    
    
  4. このインスタンスのすべてのデータベースのリストを表示するには、オプション 4 を選択します。

    1) Add a database to the backup
    2) Remove a database from the backup
    3) Show current list of databases included in backups
    4) Show list of available databases
    5) Display last full backup information
     
    Option? 4
    The following is a list of all databases in the configuration.
    Databases which are part of the backup are marked with (*)
         (*) IRISAUDIT           c:\iris-install\mgr\irisaudit\
             IRISLIB (Read Only) c:\iris-install\mgr\irislib\
             IRISLOCALDATA       c:\iris-install\mgr\irislocaldata\
         (*) IRISSYS             c:\iris-install\mgr\
         (*) USER                c:\iris-install\mgr\user\
     
    
    
  5. 最新のフル・バックアップに関する情報を表示するには、オプション 5 を選択します。

    1) Add a database to the backup
    2) Remove a database from the backup
    3) Show current list of databases included in backups
    4) Show list of available databases
    5) Display last full backup information
     
    Option? 5
     
    =====Last Full Backup Information=====
     
    Date: 19 Jan 2018
    Description: Full backup of all databases that are in the backup database list.
    Device: c:\iris-install\mgr\backup\FullDBList_20180119_001.cbk
    
    

^BACKUP による実行中のバックアップの中止

^BACKUP ユーティリティのメニュー・オプション 5 を使用すると、実行中のバックアップを中止できます。

%SYS>Do ^BACKUP
 
 
1) Backup
2) Restore ALL
3) Restore Selected or Renamed Directories
4) Edit/Display List of Directories for Backups
5) Abort Backup
6) Display Backup volume information
7) Monitor progress of backup or restore
 
Option? 5
Are you sure you want to abort the backup operation ? <No> Yes
Backup abortion succeed.

このオプションを選択したときにバックアップが実行中でない場合は、以下のメッセージが表示されます。

No Backup operation is currently running.

^BACKUP によるバックアップ・ボリュームに関する情報の表示

以下に示すように、^BACKUP メニューからオプション 6 を選択すると、バックアップ・ファイルのパス名の入力を求めるプロンプトが表示されます。

Enter the backup volume you want to display information from
 (Type STOP to exit)
Device: c:\131u1\mgr\backup\FullAllDatabases_20180802_001.cbk =>
 
This backup volume was created by:
InterSystems IRIS for Windows (x86-64) 2018.1.1 (Build 257U) Sun Jul 1 2018 23:35:31 EDT
 
The volume label contains:
   Volume number       1
   Volume backup       AUG 2 2018 12:27PM Full
   Previous backup     AUG 2 2018 11:35AM Cumulative Incremental
   Last FULL backup    AUG 2 2018 11:24AM
   Description         Full backup of ALL databases
   Buffer Count        0
   Mirror name         JEFF122
   Failover member     NONNIE20/TEST2A   
   Journal File        c:\131u1\mgr\journal\20180802.005
   Log file            c:\131u1\mgr\Backup\FullAllDatabases_20180802_001.log
   Backup Status       Completed
 
Database                                Size(mb)  Mirror DB Name 
--------                                --------  --------------
c:\131u1\mgr\                                191
c:\131u1\mgr\irisaudit\                      11
c:\131u1\mgr\user\                          2113  MUSER
Total of 3 databases, totaling 2315 mb
Backup volume size is 2365 mb

^BACKUP によるバックアップまたはリストアの進行状況の監視

^BACKUP を使用して開始された、実行中のバックアップ・ジョブまたはリストア・ジョブの進行状況を監視するには、^BACKUP メニューからオプション 7 を選択します。バックアップ・ジョブまたはリストア・ジョブを開始する前に、別のターミナル・ウィンドウで監視を開始できます。

実行中のバックアップ・ジョブの場合、以下の情報が表示されます。

                                 Backup Status
                                 -------------
 
Status:                       Running
Backup process pid:           13052
Backup file:                  c:\132u1\mgr\stcfull.bck
Description:
Log file:                     c:\132u1\mgr\irisbackup.log
Type:                         Full
Start time:                   2018-09-05 14:09:02
Estimated finish time:        2018-09-05 14:09:45
Total time (hh:mm:ss):        00:00:18
Time remaining (hh:mm:ss):    00:00:25
Estimated backup size:        7.68GB
Current backup size:          3.12GB
Current Backup rate:          184MB/sec
% Completed                   41

実行中のリストア・ジョブの場合、以下の情報が表示されます。

                                 Restor Status
                                 -------------
 
Status:                       Running
Restore process pid:          13052
Restore file:                 c:\132u1\mgr\stcfull.bck
Description:
Type:                         Full
Start time:                   2018-09-05 14:10:49
Estimated finish time:        2018-09-05 14:12:07
Total time (hh:mm:ss):        00:00:34
Time remaining (hh:mm:ss):    00:00:44
Restore file size:            7.68GB
Restore size completed:       3.28GB
Current restore rate:         103MB/sec
% Completed                   43
Note:

インクリメンタル・バックアップを実行している場合、フィールドの一部を使用できず、N/A と表示されます。これには、残り時間推定バックアップ・サイズ、および 完了 % が含まれます。

リストア・ジョブは、リストア開始時にスイッチ 10 が設定された場合、監視できません。

オンライン・バックアップ・リストア・ユーティリティ

オンライン・バックアップ・リストア・ユーティリティ (^DBREST) は、以下のアクションを実行します。

  • すべてのディレクトリまたは選択したディレクトリのどちらをリストアするかを指定する必要があります。

  • リストア中は、実行されている他の InterSystems IRIS 処理をすべて停止するかどうかを確認します。ほとんどの場合、[はい] を選択します。

  • リストアするバックアップを保持しているファイル名を確認します。バックアップが複数のボリュームに存在する場合、バックアップ情報はボリューム・ヘッダに書き込まれます。最初のボリュームのリストア後、次にリストアするボリュームがユーティリティから指示されます。

  • ボリューム・ヘッダを表示します。このヘッダには、バックアップ中に確定した情報が記述されています。この情報には、このボリュームのバックアップ日付、前回のバックアップ日付、および最後のフル・バックアップ日付があります。

  • リストアするバックアップが現在のバックアップでよいかを確認します。

  • リストアするデバイス上のディレクトリをリストします。

  • 次にリストアするバックアップを含む他の入力デバイスを指定できます。

  • バックアップ・ボリュームに関する情報をいつでも表示できます。

^DBREST メニューのオプション 12、および 3 は、^BACKUP メニューのオプション 23、および 6 と同じです。

これらのリストア・オプションのいずれかを選択すると、リストアする最初のバックアップが保存されたデバイス名を入力するよう求められます。リストア・オプションの初回入力時の既定値は、最新のフル・バックアップが送信されたデバイスです (存在する場合)。

Caution:

インクリメンタル・バックアップ、または累積バックアップをリストアする場合、対象となるデータベースの状態が、最新のフル・バックアップでリストアした時点と 完全に 同じ状態である必要があります。

後続のすべてのインクリメンタル・バックアップのリストアが完了するまで、リストアしたデータベースは絶対に更新しないでください。この警告を守らないと、インクリメンタル・バックアップや累積バックアップからのリストアで、データベースが破損することがあります。

以下は、ターミナルからユーティリティを実行する場合の例です。

%SYS>Do ^DBREST
 
                              DBREST Utility
         Restore database directories from a backup archive
 
Restore: 1. All directories
         2. Selected and/or renamed directories
         3. Display backup volume information
         4. Exit the restore program
    1 => 

以下のセクションでは、各オプションを選択する手順について説明します。

  1. ^DBREST によるすべてのデータベースのリストア

  2. ^DBREST による選択したデータベースまたは名前を変更したデータベースのリストア

  3. ^BACKUP によるバックアップ・ボリュームに関する情報の表示

  4. バックアップ履歴によるデータベースのリストア

  5. ^DBREST による自動リストア

  6. ミラーリングされたデータベースの考慮事項

また、スクリプトで非インタラクティブにこれらの関数を実行できます。詳細は、"^DBREST の外部エントリ・ポイント" を参照してください。

^DBREST によるすべてのデータベースのリストア

^DBREST メニューから 1 を選択すると、^BACKUP メニューから 2 を選択した場合と同じになります。

Note:

ミラーリングされたデータベース (ミラーリング・データベース) をリストアする場合は、手順の実行の前にこのセクションの "ミラーリングされたデータベースの考慮事項" を確認してください。

以下の手順は、すべてのディレクトリをリストアする場合の概要を示す例です。リストア処理の開始プロンプトが示されます。処理を進めるにつれ、リストア・プロセスのステッピングの際に非常に個別的な質問が行われます。

  1. ユーティリティ・メニューからすべてのディレクトリのリストアを選択します。このオプションでは、バックアップ・メディアにあるすべてのディレクトリがリストアされます。

    %SYS>Do ^DBREST
     
                                  DBREST Utility
             Restore database directories from a backup archive
     
    Restore: 1. All directories
             2. Selected and/or renamed directories
             3. Display backup volume information
             4. Exit the restore program
        1 => 1
    
    
  2. すべてのディレクトリをリストアすることを確認します。

    Proceed with restoring ALL directories Yes=>
    
  3. 次に、すべてのデータベースのリストア先にする最上位パスを入力するよう求められます。これは、リストア対象のデータベースの元のパスに接頭語として自動的に追加されます。これによって、元のディレクトリをこのディレクトリのサブディレクトリとして、すべてのデータベースがこのディレクトリの下位でリストアされます。これを無視して、データベースを元のパスでリストアするには、Enter を押します。

    Top directory for all Databases to be restored to (? for Help)?
    
  4. リストア実行中、InterSystems IRIS 処理を一時停止するかどうかを示します。これらの処理は一時停止することをお勧めします。

    Do you want to set switch 10 so that other processes will be
    prevented from running during the restore? Yes =>
    
  5. リストア場所から最初のファイルを指定します。Enter キーを押すと既定のファイルを指定できます。既定のファイルは、最後のフル・バックアップです。

    Specify input file for volume 1 of backup 1
     (Type STOP to exit)
    Device: c:\iris-install\mgr\backup\FullAllDatabases_20180323_001.cbk =>
    
    
  6. バックアップの詳細が正確かどうかをチェックし、このファイルが、リストアするファイルであることを確認します。

    This backup volume was created by:
       InterSystems IRIS for Windows 2018.1.1
     
    The volume label contains:
       Volume number      1
       Volume backup      MAR 23 2018 09:52AM Full
       Previous backup    MAR 22 2018 11:00AM Incremental
       Last FULL backup   MAR 16 2018 11:00AM
       Description        Full backup of ALL databases, whether or not they are in
                          the backup database list.
       Buffer Count       0
    Is this the backup you want to start restoring? Yes =>
    
    
  7. リストアするディレクトリがユーティリティから示され、リストア処理が進められます。

    The following directories will be restored:
    c:\iris-install\mgr\
    c:\iris-install\mgr\irisaudit\
    c:\iris-install\mgr\test\
    c:\iris-install\mgr\user\
    
     
    ***Restoring c:\iris-install\mgr\ at 10:46:01
    146045 blocks restored in 241.3 seconds for this pass, 146045 total restored.
    
    
  8. リストアを要する次のインクリメンタル・バックアップの入力ファイルを指定します。これ以上リストアする入力ファイルがない場合は「stop」と入力します。

    Specify input file for volume 1 of backup following MAR 23 2018  09:52AM
     (Type STOP to exit)
    Device: stop
    
    
  9. 他のバックアップをリストアするかどうかを示します。「Yes」で応答すると、このプロシージャが再び実行されます。「No」で応答すると、リストアされたデータベースがシステムによってマウントされます。

    Do you have any more backups to restore? Yes => No
    Mounting c:\iris-install\mgr\
        c:\iris-install\mgr\       ... (Mounted)
     
    Mounting c:\iris-install\mgr\irisaudit\
        c:\iris-install\mgr\irisaudit\  ... (Mounted)
      
    Mounting c:\iris-install\mgr\test\
        c:\iris-install\mgr\test\  ... (Mounted)
     
    Mounting c:\iris-install\mgr\user\
        c:\iris-install\mgr\user\  ... (Mounted)
     
    
    
  10. リストアしたデータベースに割り当てるジャーナル・エントリと、リストアするジャーナル・ファイル名を指定します。通常は、オプション 1 を選択して、リストアしたディレクトリに影響する変更のみを適用します。

    Note:

    すべてのディレクトリまたは選択されたディレクトリのすべてのエントリとグローバルをリストアするときに何が起こるかについては、このドキュメントの “ジャーナリング” の章にある "^JRNRESTO を使用したジャーナル・ファイルからのグローバルのリストア" を参照してください。

    Restoring a directory restores the globals in it only up to the
    date of the backup.  If you have been journaling, you can apply
    journal entries to restore any changes that have been made in the
    globals since the backup was made.
     
    What journal entries do you wish to apply?
     
         1. All entries for the directories that you restored
         2. All entries for all directories
         3. Selected directories and globals
         4. No entries
     
    Apply: 1 =>
    
    
  11. いくつかの情報の確認後に、ジャーナル・ファイルからのリストアが開始されます。

    We know something about where journaling was at the time of the backup:
    0: offset 172940 in c:\iris-install\mgr\journal\20180323.002
     
    Use current journal filter (ZJRNFILT)? No
    Use journal marker filter (MARKER^ZJRNFILT)? No
    Updates will not be replicated
     
    The earliest journal entry since the backup was made is at
    offset 172940 in c:\iris-install\mgr\journal\20180323.002
     
    Do you want to start from that location? Yes => Yes
    Final file to process (name in YYYYMMDD.NNN format): <20180323.003> [?]
          =>
     
    Prompt for name of the next file to process? No => No
     
    Provide or confirm the following configuration settings:
     
    Journal File Prefix: =>
     
    Files to dejournal will be looked for in:
         c:\iris-install\mgr\journal\
         c:\journal\altdir\
    in addition to any directories you are going to specify below, UNLESS
    you enter a minus sign ('-' without quotes) at the prompt below,
    in which case ONLY directories given subsequently will be searched
     
    Directory to search: <return when done>
    Here is a list of directories in the order they will be searched for files:
         c:\iris-install\mgr\journal\
         c:\journal\altdir\
    The journal restore includes the current journal file.
    You cannot do that unless you stop journaling or switch
         journaling to another file.
    Do you want to switch journaling? Yes => Yes
    Journaling switched to c:\iris-install\mgr\journal\20180323.004
     
    You may disable journaling the updates for faster restore.
    Do you want to disable journaling the updates? Yes => yes
    Updates will NOT be journaled
    
    
  12. ユーティリティによって進捗状況が表示され、完了時点が示されます。

     
     
    c:\iris-install\mgr\journal\20180323.002
      61.32%  65.03%  68.44%  72.21%  75.86%  79.26%  82.73%  86.08%  89.56%  
      92.99%  96.07%  98.87%100.00%
    ***Journal file finished at 11:03:31
     
     
    c:\iris-install\mgr\journal\20180323.003
      16.17%  17.10%  17.90%  18.90%  20.05%  21.33%  22.58%  23.81%  25.15%  
      26.32%  27.65%  28.85%  30.08%  31.37%  32.59%  33.98%  35.16%  36.25%  
      37.32%  38.41%  39.55%  40.72%  41.81%  42.83%  43.85%  44.89%  46.00%  
      47.15%  48.24%  49.28%  50.32%  51.41%  52.54%  53.71%  54.76%  55.80%  
      56.85%  57.97%  59.10%  60.16%  61.17%  62.19%  63.24%  64.32%  65.18%  
      66.02%  66.87%  67.71%  68.52%  69.34%  70.14%  70.96%  71.76%  72.60%  
      73.58%  74.51%  75.43%  76.35%  77.26%  78.17%  79.07%  79.69%  80.31%  
      80.93%  81.56%  82.20%  82.83%  83.47%  84.27%  87.00%  88.57%  91.65%  
      93.03%  96.09%  97.44%  99.04%100.00%
    ***Journal file finished at 11:03:32
     
    Journal reads completed. Applying changes to databases...
      14.29%  28.57%  42.86%  57.14%  71.43%  85.71% 100.00%
     
    [journal operation completed]
    
    

^DBREST による選択したデータベースまたは名前を変更したデータベースのリストア

^DBREST メニューから 2 を選択すると、^BACKUP メニューから 3 を選択した場合と同じになります。このオプションでは、バックアップ・メディアからリストアするディレクトリを選択できます。また、別のディレクトリ名や別のデバイスでデータベースをリストアすることもできます。

Note:

ミラーリングされたデータベース (ミラーリング・データベース) をリストアする場合は、手順の実行の前にこのセクションの "ミラーリングされたデータベースの考慮事項" を確認してください。

以下の例は、選択したディレクトリまたは名前を変更したディレクトリのリストア方法を示しています。

  1. ^DBREST ユーティリティからオプション 2 を選択します。

    %SYS>Do ^DBREST
     
                                  DBREST Utility
             Restore database directories from a backup archive
     
    Restore: 1. All directories
             2. Selected and/or renamed directories
             3. Display backup volume information
             4. Exit the restore program
        1 => 2
    
    
  2. リストア実行中、InterSystems IRIS 処理を一時停止するかどうかを示します。これらの処理は一時停止することをお勧めします。

    Do you want to set switch 10 so that other InterSystems IRIS processes
    will be prevented from running during the restore? Yes =>
    
  3. リストア場所から最初のファイルを指定します。Enter キーを押すと既定のファイルを指定できます。既定のファイルは、最後のフル・バックアップです。

    Specify input file for volume 1 of backup 1
     (Type STOP to exit)
    Device: c:\iris-install\mgr\backup\IncrementalDBList_20180323_001.cbk =>
    
    
  4. バックアップの詳細が正確かどうかをチェックし、このファイルが、リストアするファイルであることを確認します。

    This backup volume was created by:
       InterSystems IRIS for Windows (Intel) 5.1
     
    The volume label contains:
       Volume number      1
       Volume backup      MAR 23 2018 11:03AM Full
       Previous backup    MAR 23 2018 09:52AM Full
       Last FULL backup   MAR 23 2018 09:52AM
       Description        Incremental backup of all databases that are in the backup
                          database list.
       Buffer Count       0
    Is this the backup you want to start restoring? Yes =>
    
    
  5. ユーティリティからディレクトリ名を要求されるので、リストアするデータベースとリストア先のディレクトリを指定します。

    For each database included in the backup file, you can:
     
     -- press RETURN to restore it to its original directory;
     -- type X, then press RETURN to skip it and not restore it at all.
     -- type a different directory name.  It will be restored to the directory
        you specify.  (If you specify a directory that already contains a
        database, the data it contains will be lost).
     
    c:\iris-install\mgr\ =>
    c:\iris-install\mgr\irisaudit\ =>
    c:\iris-install\mgr\test\ =>
    c:\iris-install\mgr\user\ =>
    
    
    
  6. ディレクトリに関するプロンプトのそれぞれに応答すると、次のプロンプトが表示されます。

    Do you want to change this list of directories? No =>
    
    

    選択を編集する場合は「Yes」と入力し、確定する場合は Enter キーを押します。

  7. 前セクションのすべてのディレクトリのリストア手順と同様に処理が続行されます。

この手順は、リストアするシステムと異なるシステム上で実行されたバックアップのリストアに使用できます。

バックアップ履歴によるデータベースのリストア

InterSystems IRIS のバックアップ・ユーティリティでは、バックアップ履歴 が管理されるため、バックアップを論理的な順序でリストアできます。リストア・ユーティリティにより、タイプとバックアップ履歴の順序に従ってバックアップがリストアされるように要求されます。

最新のフル・バックアップをリストアした後、バックアップ履歴 の情報を使用して、リストアする次の論理バックアップが示され、履歴の最後までこれが続きます。後続のバックアップは以下の順序でリストアするように要求されます。

  1. 最新のフル・バックアップの実行後に、最新の累積バックアップ (存在する場合) が要求されます。

  2. 最新の累積バックアップ以降の (累積バックアップが存在しない場合は、最新のフル・バックアップ以降の) すべてのインクリメンタル・バックアップが要求されます。一番古いものから最新までの順番で、リストアを実行します。

リストア処理で、指示されたバックアップを変更できます。しかし、インクリメンタル・バックアップや累積バックアップは、データベースの完全なコピーではありません。インクリメンタル・バックアップをリストアするには、事前にフル・バックアップをリストアしておく必要があります。

Important:

クラスタから同一データベースへのアクセスがサポートされる InterSystems IRIS プラットフォームでは、指定されたデータベース・ディレクトリを常に同じノードからバックアップする必要があります。これにより、ディレクトリのリストアが必要な場合に、完全なバックアップ履歴の使用が可能になります。

^DBREST による自動リストア

InterSystems IRIS リストア・ユーティリティ ^DBREST には、外部エントリ・ポイントによる非インタラクティブな実行オプションが用意されています。

Note:

ミラーリングされたデータベース (ミラーリング・データベース) をリストアする場合は、自動リストアを実行する前にこのセクションの "ミラーリングされたデータベースの考慮事項" を確認してください。

これらの 2 つのエントリ・ポイントのいずれかを呼び出すことによって、無人で実行されるリストアを実装するスクリプトを作成できます。

  • EXTALL^DBREST — バックアップ・デバイスからすべてのデータベースをリストアします ("^DBREST によるすべてのデータベースのリストア" で説明されている手順と同等の自動リストア)。^DBREST ユーティリティの EXTALL エントリ・ポイントを使用する構文は、以下のようになります。

    EXTALL^DBREST(quietmode,allowupd,inpdev,dirlist,jrnopt,jrnfile,jdirglo)
    
    Note:

    ターゲット・ディレクトリが存在するが、IRIS.DAT ファイルが存在しない場合、EXTALL^DBRESTIRIS.DAT ファイルをリストアします。

  • EXTSELCT^DBREST — 選択されたファイルをバックアップ・デバイスからリストアするか、またはソース・ディレクトリと異なるターゲット・ディレクトリにリストアします ("^DBREST による選択したデータベースまたは名前を変更したデータベースのリストア" で説明されている手順と同等の自動リストア)。^DBREST ユーティリティの EXTSELCT エントリ・ポイントを使用する構文は、以下のようになります。

    EXTSELCT^DBREST(quietmode,allowupd,inpdev,dirlist,jrnopt,jrnfile,jdirglo)
    

両方のエントリ・ポイントは、呼び出しの状態を返す関数です。引数はすべて入力のみです。特に指定がない限り、下表に記載された入力引数は両方の関数で使用されます。

引数 説明
allowupd リストア処理中に更新を許可するか否かのインジケータ

1 — リストア処理中に更新を許可します。

0 — 更新を許可しません。

dirlist リストアするディレクトリのリストを含むファイルの名前。リストアする各ディレクトリに 1 つのレコードが存在する必要があります。EXTALL エントリ・ポイントでは無視されます。“ディレクトリ・リスト・ファイルの要件” を参照してください。

^DBREST が完了すると、dirlist で指定されたファイルが削除されます。

inpdev バックアップを含む入力デバイス。
jdirglo jrnopt3 の場合のみ使用します。これは、ジャーナルのリストアのためのディレクトリおよびグローバルの選択条件を含むファイルの名前です。“ディレクトリとグローバルの選択条件” を参照してください。
jrnfile ジャーナル・ファイル。NULL の場合、ユーティリティは、^%SYS("JOURNAL“,”CURRENT") グローバルに保存されている現在のファイルを使用します。
jrnopt ジャーナルをリストアするためのオプション

1 — バックアップをリストアしたすべてのディレクトリ

2 — ジャーナル内のすべてのディレクトリ

3 — jdirglo 引数によって指定された、選択されたディレクトリおよびグローバル

4 — ディレクトリなし

quietmode 値は、処理が quiet (非インタラクティブ) モードであることを示し、この外部呼出しに対しては、NULL 以外の値 (通常 1) とする必要があります。

これらの関数の呼び出しから、以下のコードが返される可能性があります。

リターン・コード 説明
3 エラーは発生していません。正常に完了しました。
-1 入力デバイス (リストア元のデバイス) を開くことができません。
-2 ボリュームのラベルが、バックアップ履歴のラベルと一致しません。
-3 バックアップおよびリストアは、既に進行中です。
-4 読み取り選択条件に対して (ディレクトリの選択的リストアに対して) 無効なデバイスです。
-5 無効なジャーナル・リストア・オプションです。
-6 無効なジャーナル・ファイルであるか、ジャーナル・リストアの選択条件のファイルを開けません。

ディレクトリ・リスト・ファイルの要件

dirlist によって示されたファイルの要件

  • リストアするディレクトリごとに 1 つのレコードを含みます。

  • 各フィールドをコンマで区切ります (,)。

  • 各レコードの形式は、SourceDirTargetDirCreateDir で、これらの意味は以下のとおりです。

    引数 説明
    SourceDir リストアするディレクトリの名前。
    TargetDir リストア先のディレクトリの名前。ソース・ディレクトリと同じ名前のディレクトリにリストアする場合は省略します。
    CreateDir ターゲット・ディレクトリが存在しない場合、ターゲット・ディレクトリを作成するか否か。

    Y — ターゲット・ディレクトリを作成します。

    N — ターゲット・ディレクトリを作成しません。

例えば、テキスト・ファイル (RestoreList.txt) を以下の文字列を含む C:\Backup\ ディレクトリに作成したと仮定します。

C:\intersystems\iris\mgr\user\,C:\intersystems\iris\mgr\,Y

以下のルーチンを %SYS ネームスペースで実行すると、C:\intersystems\iris\mgr\user\ から C:\intersystems\iris\mgr\ にデータベースをリストアできます。

set SourceDir = "C:\intersystems\iris\mgr\user\"
set BackupDir = "C:\Backup\"
set BackupListFile="C:\Backup\RestoreList.txt"
do EXTSELCT^DBREST(1,0,BackupDir_"back1.cbk",BackupListFile,4,"","")

ディレクトリとグローバルの選択条件

jdirglo によって示されたファイルの要件

  • リストアするディレクトリのそれぞれのレコードが 1 つずつ格納されます。

  • 各フィールドをコンマで区切ります (,)。

  • 各レコードの形式は、DirNameRestAllGlobals で、これらの意味は以下のとおりです。

引数 説明
DirName ジャーナルをリストアするディレクトリの名前。
Globals ジャーナル・リストアのためにコンマで区切られたグローバルのリスト。RestAll が N の場合のみ使用します。グローバルのリストが大きい場合、次の行に残りのグローバル名を記述できますが、再び、ディレクトリ名に続いて、N およびグローバルのリストを指定する必要があります。
RestAll ディレクトリ内のすべてのグローバルについてジャーナル・エントリをリストアするか否か。大文字小文字を区別しない、必須の引数です。

Y — このディレクトリ内のすべてのグローバルでジャーナルをリストアします。

N — グローバル・リストにジャーナル・リストアのためのグローバルを指定します。

異なるレコードの例を以下に示します。

DUA0:[TEST1],Y
DUA1:[TEST2],N,GLO1,GLO2,GLO3
DUA1:[TEST2],N,GLO4,GLO5,GLO6
DUA1:[TEST3],n 

そのディレクトリのジャーナルをリストアしたくない場合、最後のレコードも完全に省略できます。

ミラーリングされたデータベースの考慮事項

ミラーリングされたデータベース (ミラーリング・データベース) が InterSystems IRIS バックアップ・リストアのターゲット (対象) である場合、ソース・データベースはターゲット・データベースと一致する必要があります (つまり、同じミラーリング・データベースであることが必要です)。

Note:

フェイルオーバー・ミラー・メンバで作成されたミラーリング・データベースのバックアップは、そのミラーの任意のメンバ (つまり、他のフェイルオーバー・メンバもしくは非同期メンバ) にリストアできます。非同期メンバで作成されたバックアップからリストアする場合、このセクションの "非同期ミラー・メンバからのリストア" を参照してください。

このセクションで、「アクティブなミラーリング・データベース」という語は、現在、ホスト・システムが属するミラーに含まれているデータベースを指します (そのミラーが現在稼働していない場合も含む)。以前にミラーリングされていたデータベースや、ホスト・システムが既に属していないミラーに含まれていたデータベースは該当しません。

ミラーでの InterSystems IRIS バックアップ・リストアの動作は、バックアップを作成したミラー・メンバでリストアしているのか、あるいは別のシステムであるかにより、以下のように異なります。

  • プライマリ・フェイルオーバー・メンバ — ^DBREST ではプライマリ・フェイルオーバー・メンバのアクティブなミラーリング・データベースをリストアできません。ただし、データベースにリストアの必要がある場合は、ミラーから一時的に削除できます ("高可用性ガイド" の “ミラーリング” の章の "ミラーリングされたデータベースをミラーから削除する" を参照)。ただしデータベースはミラーリングされたデータベースとしてリストアされ (ミラーリングされたデータベースとしてバックアップされたため)、以下の各セクションで説明する機能 (ミラーにあるデータベースをアクティブ化するために必要なジャーナル・ファイルの自動リストアなど) が適用されます。

  • バックアップ・フェイルオーバー・メンバ — バックアップ・フェイルオーバー・メンバで、アクティブ状態にある、もしくはバックアップのコピーよりも新しいミラーリング・データベースのリストアを行うと、以下のように警告メッセージが表示されます。

    • フルバックアップ・リストアの場合、それらのデータベースはスキップされます。

    • 選択的リストアの場合、ターゲットを上書きしていいかどうかが確認されます。

ミラーリングされたデータベースのフルバックアップ・リストア

^DBREST ユーティリティによる対話形式 (この章の "オンライン・バックアップ・リストア・ユーティリティ" を参照) と EXTALL エントリ・ポイントによる非対話形式 (この章の "^DBREST の外部エントリ・ポイント" を参照) のどちらで実行したかによって、ミラーリングされたデータベース (ミラーリング・データベース) のフルバックアップ・リストアは以下のように異なります。

  • バックアップを作成したシステムでのフルバックアップ・リストアは、ミラーリングされていないシステムに対する場合と同様に行われます。ただし、バックアップのコピーよりも新しい、ローカルのミラーリング・データベース (定義では、現在アクティブなデータベースも含む) はスキップされる点が異なります。すべてのデータベースは元の場所へリストアされます。

  • バックアップを作成したシステム以外のミラー・メンバでのフルバックアップ・リストアは、既にシステムに存在するミラーリング・データベースのみをリストアします。ただし、バックアップ内のミラーリング・データベースよりも新しい、ターゲット・システムのミラーリング・データベースはスキップされます。

  • 新規の最上位のディレクトリを指定するフルバックアップ・リストアでは、データベースの新規パスを生成した後にバックアップ内のデータベースすべてをリストアします。リストアの後、ミラーリング・データベースのコピーが最終的に 2 つになった場合、リストアされたコピーは既にシステム上でアクティブであるためにアクティブ化できないと警告されます。

フルバックアップ・リストア後に、システムは以下を試みます。

  1. 必要なジャーナル・ファイルのリストアにより、ミラーリングされたデータベースをアクティブにする。

  2. ミラーリング・データベースをアクティブなミラーへリンクする (ミラーが存在し、かつデータベースのコピーは存在しない場合)。

ミラーリングされたデータベースの選択的バックアップ・リストア

ミラーリングされたデータベース (ミラーリング・データベース) の選択的バックアップ・リストアは、以下のように異なります。

  • バックアップをリストアする際、リストアをミラーリング・データベースのみに制限するかどうかを尋ねられます。ユーザの応答によって以下のようになります。

    • [はい] — ミラーリングされたデータベースのみが表示されます。

    • [いいえ] — バックアップのデータベースすべての宛先を選択するプロンプトが表示されます。

  • 選択的リストアのデータベース選択フェーズの間、バックアップのデータベースのリストが表示され、それらをリストアする場所のパスを指定するよう求められます。ソース・システムにリストアする場合は、パスを入力するか、“X” または “x” (ディレクトリをスキップ) を入力するか、あるいは Enter キー (バックアップ内に保存されたパスにリストア) を押します。

    バックアップを作成したシステムではないミラー・メンバ上にバックアップをリストアする場合、ミラーリングされたデータベースのディレクトリについて Enter キーを押すと、同じミラー・データベース名を持つアクティブなミラーリング・データベースがそのシステム上にあるかどうかによって結果が異なります。

    • データベースが存在する場合、Enter キーを押すと、既存のデータベースのディレクトリ・パス (そのパスがソース・システムのパスと同じかどうかなど) にかかわりなく、リストアされたデータベースで既存のデータベースが上書きされます。

    • データベースが存在しない場合、データベースはソース・マシン上にあるディレクトリ・パスにリストアされます。そのパスが存在しない場合は、必要なディレクトリが作成されているかどうか確認する必要があります。データベースがその場所に既にある場合、アクションは不要です。

  • 選択的バックアップ・リストアにおいて、以下の状況でミラーリング・データベースがリストアによって上書きされることが検出されると、その続行によってターゲット・データベースが破壊される旨の警告が表示され、続行するかどうかを尋ねられます。

    • バックアップのデータベースが現在のデータベースより古い。

    • バックアップのデータベースが現在のデータベースのコピーではない (例えば、ミラーリングされていないデータベースや、別のミラーの同じミラー・データベース名のデータベースである場合)。

    続行する場合、ターゲット・データベースはミラーから削除され、要求に従い上書きされます。

  • 選択的バックアップ・リストアが EXTSELCT エントリ・ポイント (この章の "^DBREST の外部エントリ・ポイント" を参照) を介して非対話形式で行われている場合は、ソース・パスおよびターゲット・パスのデータベース選択ファイルは、パス名またはミラー・データベース名のいずれかで指定できます。

    ミラーリングされたデータベースの場合、ターゲットを空白にすることでローカル・マシンの該当ミラー・データベースに対するリストアとなります。ターゲットを空白としない場合、データベースは以下のいずれかになります。

    • ミラーリングされたデータベースの正規のローカル・コピー。

    • ミラーリングされたデータベースのローカル・コピーがシステムにない場合は、ミラーリングされていないデータベース (または、存在しないディレクトリ/データベース)。

    • ミラー・データベース名。

    Note:

    ターゲットがミラー・データベース名 (もしくは空白)で、ミラーリングされたデータベースがローカル・システムに存在しない (もしくはディスマウントである) 場合、バックアップを作成したシステム上でバックアップをリストアする場合に限り、ターゲットは作成されます。バックアップが他のミラー・メンバでリストアされる場合、データベースはスキップされます。

フルバックアップ・リストアと同様に、選択的バックアップ・リストア後に、システムは以下を試みます。

  1. 必要なジャーナル・ファイルのリストアにより、ミラーリングされたデータベースをアクティブにする。

  2. ミラーリングされたデータベースをアクティブなミラーへリンクする (ミラーが存在する場合)。

非同期ミラー・メンバからのリストア

非同期ミラー・メンバで作成されたミラーリング・データベースからリストアする際には、以下の点を考慮します。

  • 非同期ミラー・メンバで作成されたミラーリング・データベースのバックアップは、同じミラーの任意の非同期メンバに対してリストアできます。

  • 非同期ミラー・メンバで作成されたミラーリング・データベースのバックアップは、ミラーリング・データベースの新規コピーを作成する場合に限って使用できます (つまり、フェイルオーバー・メンバの既存のミラーリング・データベース上にリストアすることはできません)。

FeedbackOpens in a new tab