4D v16.3

ログファイルの管理

ホーム

 
4D v16.3
ログファイルの管理

ログファイルの管理  


 

 

継続的に使用されるデータベースでは、変更の記録およびレコードの追加や削除が常に行われています。定期的にデータをバックアップすることは重要ですが、バックアップだけでは (予期しない障害の場合に)、前回のバックアップ以降に入力されたデータを回復することができません。この必要性に対応するため、4Dは特定のツールであるログファイルを提供しています。このファイルを使用すると、データベースデータのセキュリティーが常に保証されます。

また、4Dは常にメモリー上のデータキャッシュを使用して作業を行います。データベースのデータへの変更はすべて、ハードディスクへ書き込む前に、キャッシュへ一時的に保存されます。これにより、アプリケーションの処理速度が向上します。実際、メモリーへのアクセスは、ハードディスクへのアクセスよりも高速に行われます。キャッシュに保存したデータをディスクへ書き込む前に障害が発生した場合は、カレントログファイルを組み込んでデータベースを完全に復旧しなくてはなりません。

さらに、4Dには、カレントログファイルの内容を解析する機能が組み込まれており、これによってデータベースのデータ上で実行されたすべての処理をさかのぼることができます。これらの機能は MSC にて提供されています (アクティビティ解析ページおよびロールバックページ参照) 

4Dが生成するログファイルには、データベース上で行われたすべての操作が順次記録されています。デフォルトでは、全てのテーブルはデータログが取られています(つまりログファイルに含まれています)。しかしログファイルに含めるのプロパティを使用することによって特定のテーブルをログに含めないようにすることもできます。

したがって、ユーザーが実行した各操作により、2 つのアクションが同時に行われます。1つは、データベースに対するアクション (命令を通常どおりに実行)、もう1つはログファイルに対するアクション (処理の説明を記録) です。ログファイルは個別に作成され、ユーザーの作業を妨げたり作業速度を低下させることはありません。1つのデータベースでは、一度に1つのログファイ ルだけを扱うことができます。ログファイルには、次の操作が記録されます: 

  • データファイルの開閉
  • プロセス (コンテキスト) の開閉
  • レコードまたはBLOBの追加
  • レコードの変更
  • レコードの削除
  • トランザクションの作成や終了

これらのアクションについての詳細は、アクティビティ解析ページを参照ください。

4D はログファイルを取り扱います。ログファイルは、データファイルに影響を与えるすべての操作を区別なく盛り込み、ユーザーが行った操作や4Dメソッドによ る処理、4D SQL エンジン、4Dプラグイン (4D Write、4D View など)、Web ブラウザによる処理など、あらゆる操作を記録します。

ログファイルの機能をまとめた図を次に示します:

カレントログファイルはカレントデータファイルと一緒に自動保存されます。このメカニズムには、2つの際立った利点があります。

  • ロ グファイルが保存されるディスクの容量が一杯にならないようにします。バックアップを実行しない場合、ログファイルは使用するにつれて徐々に大きくなり、 いずれはディスクの空き容量をすべて使い果たしてしまいます。データファイルをバックアップするたびに、4Dや4D Server はカレントログファイルをクローズし、その直後に空ファイルを新たに開くため、ディスクフルになる危険を避けることができます。この後、古いログファイル はアーカイブに保存され、バックアップのセット (世代) を管理するメカニズムに従って最終的には破棄されます。
  • 後からデータベース の解析や修復を行えるように、各バックアップに対応するログファイルを保管します。ログファイルの統合は、それが対応するデータベースからのみ実行できま す。ログファイルをバックアップに正しく統合するために、バックアップとアーカイブ化されたログファイルとを同時に保持することが重要です。

デフォルトでは、4Dで作成されたあらゆるデータベースでログファイルが使用されます。このファイルの作成は、自動バックアップオプションに基づいています (自動バックアップ参照)。ログファイルにはデータファイル名.journalという名前が付けられ、データベースストラクチャーを含むフォルダー内に置かれます。


データベースでログファイルが使用されているかどうかは、いつでも調べることができます。これを行うには、環境設定のバックアップ/設定ページログファイルを使用オ プションが選択されているか確認します (ログ管理参照)。このオプションの選択を解除した場合、またはログファイルなしでデータベースを使用しており、ログファイルを 用いたバックアップ方法を導入したい場合は、ログファイルを作成する必要があります。

ログファイルを作成するには、次の手順に従ってください: 

  1. 環境設定のバックアップ/設定ページで、ログファイルを使用オプションを選択します。ログファイルにはデフォルトでデータファイル名.journalという名前が付けられます。
  2. デフォルトの名前を使用するか、またはその名前を変更し、次にファイルの保管場所を選択します。
    2つ以上のハードドライブが存在する場合は、データベースが保管されているディスク以外の場所にログファイルを保存することをお勧めします。これにより、データベースが保管されているハードドライブが破損した場合でも、ログファイルを呼び出すことができます。
  3. 保存をクリックします。
    開いたログファイルのアクセスパスと名前が環境設定ダイアログボックスの"ログファイルを使用"エリアに表示されます。このエリアをクリックすると、ポップアップメニューが表示され、ディスク上のフォルダーを確認することが出来ます。
  4. 環境設定ダイアログボックスを確定します。

注: 4D v14以降、ログファイルを作成・使用するための新しい内部メカニズムが採用されたことにより、このファイルはより抵抗力を持つようになりました。ログファイルを使用するためには、データログを取る全てのテーブルがプライマリーキーを持っている必要があります。そうでない(変換されたデータベース等の)場合には、データログを取る全てのテーブルにおいてプライマリーキーが正常に設定されていない限りログファイルを起動することはできない旨の警告ダイアログボックスが表示されます。この規則に適合するために プライマリーキー管理 を使用することができます。アシスタントは全てのテーブルの状態をチェックし、プライマリーキーの設定を手助けします。

ログファイルの作成を可能にするには、データベースが次の条件のいずれかを満たしていなくてはなりません(ただしプライマリーキーに適合していない場合は除きます。詳細は前項を参照して下さい)。
  • データファイルが空である。
  • データベースのバックアップを実行した直後であり、データへの変更がまだ行われていない。

いずれの条件も満たしていない場合は、プログラムはバックアップを実行する必要がある旨を知らせる警告ダイアログボックスを表示します。OKをクリックすると、バックアップが開始され、その後にログファイルが作成されます。Cancelを クリックした場合には、ログファイル作成の要求は保存され、次回データベースをバックアップする時までログファイルの作成は延期されます。このような安全 対策が不可欠な理由は、障害の発生後にデータベースを復元するために、ログファイルへ記録された処理を統合するデータベースのコピーが必要となるからで す。

これ以外に何も行わなくても、データ上で実行されたすべての処理がこのファイルに記録され、その後データベースをオープンした時にこのファイルが使用されます。

新規データファイルを作成したら、別のログファイルを作成しなくてはなりません。また、ログファイルに関連付けられていない (または、ログファイルが見つからない) 別のデータファイルをオープンした場合、他のログファイルを設定するか、作成しなくてはなりません。

カレントログファイルへの操作記録を中止したい場合は、アプリケーションの環境設定のバックアップ/設定ページログファイルを使用オプションを選択解除します。

すると、4Dは警告メッセージを表示して、この動作によりログファイルによるセキュリティが利用できなくなることを知らせます:

停止をクリックすると、カレントログファイルが即座にクローズされます (この後に環境設定ダイアログボックスを確定する必要はありません)。

カレントログファイルが大きすぎるため、それをクローズしたい場合は、データファイルのバックアップを実行してください。これにより、ログファイルのバックアップが作成されます。

4DServer:

  • New log fileコマンドはカレントログファイルを自動的に閉じて、新しいログファイルを開始します。
  • 実行中何らかの理由でログファイルが利用不能になった場合、エラー1274が生成され、4D Serverは一切のデータ書き込みを許可しなくなります。再びログファイルが利用可能になったらフルバックアップを実行しなければなりません。

 
プロパティ 

プロダクト: 4D
テーマ: データベースのバックアップと復元

 
履歴 

 
ARTICLE USAGE

デザインリファレンス ( 4D v16)
デザインリファレンス ( 4D v16.1)
デザインリファレンス ( 4D v16.3)