This is an old revision of the document!


既存の POPFile のデータをアップグレードする

Windows 版の POPFile インストーラーは、自動的に既存の POPFile のインストレーションを検知し、アップグレードするかどうか確認してきます。アップグレードによって、POPFile のコーパスのデータ形式や構造が変更されることがあり、この場合インストーラーはある程度の期間、進行中のメッセージを表示します。(というのは、とても大きなコーパスをアップグレードするには、数分またはそれ以上の時間がかかるからです)。

インストーラーが、いくつかの Windows 版のユーティリティ(たとえば、Message Capture utility)に関する進行中のメッセージを表示することもありますが、コーパスのデータベースアップグレードは、インストーラーの仕事ではありません。これは実際は POPFile 本体の仕事なのです。

この wiki のページでは、クロスプラットホーム版のユーザーに対して、コーパスのデータベースアップグレードに関する概要を説明しています。

POPFile は起動するたび、コーパスのデータベースアップグレードが必要かどうか確認します。アップグレードの間、POPFile はメールクライアントからの要求に反応しませんし、POPFile UI も動作しません。

アップグレードが非常に大きなデータベース (100MB 以上) に対してされる場合は、30分以上の間、POPFile が固まってしまったように見え、CPU負荷が高まり、大量のディスクへのアクセスが発生します。

アップグレード方法は、クロスプラットホーム版では、通常 zip ファイルに含まれるリリースノートに記載されています。これらのリリースノートはオンラインでも利用可能です、たとえば:

POPFile はもともとフラットファイルをコーパスとして使い始め、複数のBerkeleyDB データベースファイルに移行し(短い期間)、現在はひとつの SQLite データベースをコーパスとして使用しています。POPFile は自動的に既存のコーパスを現在のフォーマットにアップグレードします。これは、(訳注 POPFile と一緒に)インストールされた Perl のモジュールによって実現されます。

バージョン 0.22.2 リリースノートより:

  • POPFile に、新しい“パッケージリスト” 機能が加わりました。これによって、自動的に POPFile に適切な Perl モジュールがインストールされているかチェックされます。これは、クロスプラットホームバージョンのユーザーにはとても重要です。なぜならば POPFile の起動時に POPFile がきちんとインストールされているかサニティチェックをしてくれるからです。

こちらも参照してください:

SQLite モジュールを追加するときには注意が必要です - 二つの互換性のないバージョンがあり(SQLite 2.x と SQLite 3.x のライブラリ)、現在のPOPFile (0.22.3)はSQLite 2.x でしか動作しないためです。

POPFile が SQLite を使い始めたとき、SQLite Perl モジュールは、SQLite 2.x のライブラリを使用していました。しかし、SQLite 3.x がリリースされたとき、SQLite モジュールは SQLite 3.x を使用するようにアップグレードされたため、SQLite 2.x をサポートするために新しいSQLite2 Perl モジュールが作成されました。この事情はわかりにくいでしょうから、ある程度の詳細が こちらの Wiki で話題になっています。

SQLite2モジュールを Perl に追加し、 popfile.cfg を編集して SQLite 2を使用するのは、簡単だということが分かるでしょう(ここに記述されています)。

BerkeleyDB やフラットファイルのコーパスから、SQLite データベースへのアップグレードは、POPFile が起動したときに行われます。このデータベースアップグレードにはある程度の時間がかかり(数分程度)、この間 POPFile は固まったように(たとえば UI が見えなく)なります。それぞれのコーパスが変換されるたび、昔のBerkeleyDB のデータベースファイル(table.db)や、昔のフラットファイル(table)は削除されますので、コーパスのディレクトリを見れば、アップグレードの進展を確認することもできます。

コーパスの変換プロセスは、存在するBerkeleyDB コーパスを廃棄しますので、アップグレード中に予期せぬ出来事が起こっても対応できるよう、アップグレード前に、バックアップを取ることをおすすめします。

デフォルトでは、SQLite データベース (popfile.db) はpopfile.cfg と同じディレクトリに作成されますので、いったんBerkeleyDB からのコーパス変換が完了したら、空のコーパスを削除しても安全です。

原文

ハウツー

POPFile ドキュメンテーションプロジェクト

 
jp/howtos/upgradingpopfiledata.1169631854.txt.gz · Last modified: 2008/02/08 19:49 (external edit)

Should you find anything in the documentation that is incomplete, unclear, outdated or just plain wrong, please let us know and leave a note in the Documentation Forum.

Recent changes RSS feed Donate Driven by DokuWiki
The content of this wiki is protected by the GNU Fee Documentation License