This shows you the differences between two versions of the page.
— | jp:mysqlbackend [2008/02/08 19:49] (current) – created - external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== MySQL をバックエンドのデータベースとして使用する ====== | ||
+ | |||
+ | ===== Note ===== | ||
+ | POPFile 0.22.0 はパッチを当てない限り、MySQLと互換性がありません。0.22.1がリリースされれば、完全に互換性が保たれるようになります。(訳注: | ||
+ | ===== End Note ===== | ||
+ | |||
+ | POPFile 0.21.0 から、バックエンドのデータベースは、SQL (互換の)データベースを使用するようになっています。POPFile は、SQLite を使うように設定された状態で提供されていますが、Perl の DBI がサポートするどんな SQL データベースを使用するように設定することができます。下記には、MySQL 特有の設定方法がありますが、ほかの SQL データベースにも容易に対応可能でしょう。 | ||
+ | |||
+ | どのように設定を行うかは、あなたがお使いの POPFile のバージョンに依存しますから、下記から適切な設定方法を選ぶようにしましょう。また、これらの設定方法は、すでにMySQL サーバーが起動しており、MySQL とMySQL クライアントに慣れ親しんでいることを前提としていることに注意してください。 | ||
+ | |||
+ | ===== MySQL と POPFile に関する重要な項目 ===== | ||
+ | |||
+ | 現在のバージョンの MySQL は、トリガーをサポートしていません。POPFile は、いくつかの領域でデータベース内の整合性を自動的に保つために、 データベーストリガーを使用しています。 MySQL をバックエンドのデータベースとして使用しているユーザーは、トリガーの代わりに下記の対応を行う必要があります: | ||
+ | |||
+ | - マグネットが削除された時の親のない子レコード | ||
+ | - バケツが削除されたときの親のないバケツの内容 | ||
+ | |||
+ | バケツを削除する前に、つねにバケツを空にする ( " | ||
+ | |||
+ | ===== Windows ユーザー ===== | ||
+ | |||
+ | インストーラーから POPFile をインストールした Windows 版のユーザーは、Perl の最小のサブセットを使っています。このサブセットには、MySQL を使うために必要なコンポーネントが不足しています。 | ||
+ | |||
+ | バックエンドのデータベースを問題なく変更するには、これらのユーザーはActiveState 版の Perlをフルインストールしなければなりません、最小のサブセットの Perl を無効にするために、POPFile がインストールされたフォルダ内にある、下記に記述されたexe ファイルを削除したり、名前を変更したりしてから、適切にクロスプラットホーム版のガイドに従う必要があります。 | ||
+ | |||
+ | [注意: Windows 版の 0.21.0 はまだ開発中ですので、下記の情報は書き換わる可能性があります(訳注: | ||
+ | |||
+ | POPFile がインストールされたフォルダ内にあるいくつかの exe ファイルは、最小版の Perl の一部分ではありませんから、それらを削除することは好ましくありません。(たとえば、アンインストールのための exe は、インストールの間に変更されたメールの設定をリストアするためにあります。) | ||
+ | |||
+ | 最小版の Perl を無効にするには、POPFile がインストールされたフォルダ内にある perl.exe、wperl.exe、perl58.dll ファイルの名前を変更(または削除)します。POPFile がインストールされたフォルダ内の lib フォルダの名前を変更(または削除)するのも良い考えです。というのは、最小版の Perl インストレーションの残りがここに入っているからです。注意 この lib フォルダは、通常のActiveState Perl にはない、いくつかのコンポーネントを含んでいます。 | ||
+ | |||
+ | [Windows 版は、最小版の Perl を使う、いくつかの exe ファイル(popfile.exe, | ||
+ | |||
+ | ===== 現在の POPFile ユーザーがバックエンドをMySQL に変更する ===== | ||
+ | ==== 重要な事項 ==== | ||
+ | |||
+ | 現在の POPFile ユーザーがバックエンドをMySQL に変更するには、下記のステップにしたがってください。 | ||
+ | |||
+ | - MySQL クライアントを使用して、popfile 用のデータベースとユーザーを作成します。< | ||
+ | mysql | ||
+ | create database popfile; | ||
+ | grant all on popfile.* to pfuser identified by ' | ||
+ | flush privileges; | ||
+ | quit | ||
+ | </ | ||
+ | - 下記の Perl モジュールがインストール済みであるかを確認しましょう。もしまだであれば、CPAN ( または、PPM を利用して ActiveState ) から入手してインストールします。 | ||
+ | - DBD::mysql | ||
+ | - 起動している全ての POPFile を停止します。 | ||
+ | - popfile.cfg ファイルを編集し、下記の行を変更します。< | ||
+ | bayes_dbconnect dbi: | ||
+ | bayes_dbuser pfuser | ||
+ | bayes_dbauth pfpassword | ||
+ | </ | ||
+ | - SQLite コマンドユーティリティーを使用して、現在の POPFile のデータをテキストファイルに出力します。< | ||
+ | sqlite popfile | ||
+ | .out dump.sql | ||
+ | .dump | ||
+ | .q</ | ||
+ | - MySQL コマンドユーティリティーを使用して、テキストに出力されたデータをMySQLにロードします。< | ||
+ | mysql | ||
+ | use popfile; | ||
+ | source dump.sql | ||
+ | update popfile set version = 0; | ||
+ | quit</ | ||
+ | - POPFile を起動すると、データベースのバージョンが0であることを検知し、再びデータを出力し、MySQL 形式のスキーマを使用してデータベースを再作成します。これはしばらく時間がかかりますので、お待ちください。 | ||
+ | - これで MySQL をバックエンドのデータベースとして起動しています。 | ||
+ | |||
+ | ===== POPFile の新規ユーザー ===== | ||
+ | |||
+ | 初めて POPFile をインストールし、MySQL をバックエンドのデータベースとして使いたいユーザーは、下記のステップにしたがってください; | ||
+ | |||
+ | - MySQL クライアントを使用して、popfile 用のデータベースとユーザーを作成します。< | ||
+ | mysql | ||
+ | create database popfile; | ||
+ | grant all on popfile.* to pfuser identified by ' | ||
+ | flush privileges; | ||
+ | quit | ||
+ | </ | ||
+ | - 下記の Perl モジュールがインストール済みであるかを確認しましょう。もしまだであれば、CPAN ( または、PPM を利用して ActiveState ) から入手してインストールします。 | ||
+ | - DBD::mysql | ||
+ | - $POPFILE_USER で設定された位置に、popfile.cfg ファイルを作成します。 下記の行が含まれている必要があります< | ||
+ | bayes_dbconnect dbi: | ||
+ | bayes_dbuser pfuser | ||
+ | bayes_dbauth pfpassword | ||
+ | </ | ||
+ | - POPFile を起動します。 | ||
+ | - これで MySQL をバックエンドのデータベースとして起動しています。UI 画面に移動し、POPFile をきちんと動かすために少なくとも2つのバケツを作成します。 | ||
+ | |||
+ | [[: MySQLBackend | 原文 ]] | ||
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.