Sympa を実行するにはリレーショナルデータベース (RDBMS) が必要です。現在のところ、次のいずれかの RDBMS を使えます: MySQL、SQLite、PostgreSQL、Oracle、Sybase。他の RDBMS とのインタフェースは、コードに若干の修正を施すだけでできます。多くの RDBMS の DBD (データベースドライバ) を持つ DBI (データベースインタフェース) の API を使っているためです,
Sympa
user_table テーブルに。subscriber_table テーブルに。このテーブルには、取り込んだ利用者のキャッシュも入ります。admin_table テーブルに。このテーブルには、取り込んだオーナーや吟味役のキャッシュも入ります。log_table に。リストのオーナーは、ウェブインタフェイスでリストの運用記録を閲覧できます。データベースシステムをインストール (Sympa と同じホストにでなくてもかまいません) し、Sympa のホストにそのデータベースのためのクライアントライブラリをインストールしておく必要があります。おそらく、選択した RDBMS のための Perl DBD (データベースドライバ) が見つかるでしょう。DBI モジュールで使えるようになっているかどうか調べてください。
Sympa はデータベースシステムとのやりとりに DBI と データベースシステム用の DBD を使います。DBI と DBD::データベース が CPAN モジュールとして配布されています (たとえば MySQL ならば Msql-Mysql モジュール)。モジュールのインストールの詳細については「Perl と CPAN モジュールのインストール」を参照してください。
sympa.pl プロセスは、起動時に、データベース (sympa.conf に設定されている) が利用可能で期待通りの構成になっているかどうか調べます。なっていなければ、sympa.pl プロセスはデータベースを作成するか、構成を更新します。ただし、この機能が利用できるのは MySQL で、他の RDBMS との連携は不完全です。なお、この自動処理では MySQL の root がパスワードを使わないようになっている必要があります。パスワードを使っているのであれば、sympa.pl を最初に実行するときだけ無効にしてください。
自動処理ではまた、sympa.conf で宣言した db_user に権限を与えます。
下記の create_db スクリプトで sympa データベースを作成できます。このスクリプトは配布物の script/ ディレクトリにあります (現在、MySQL、SQLite、PostgreSQL、Oracle、Sybase 用のスクリプトがあります)。
mysql、psql、sqlplus のような簡易 SQL シェルを使ってスクリプトを実行できます。
例:
# mysql < create_db.mysql
sympa データベースへのアクセスを制限することを強くお勧めします。そうしておいて、sympa.conf で db_user と db_passwd を設定します。
MySQL では:
grant all on sympa.* to sympa@localhost identified by 'your_password'; flush privileges;
Sympa に教えておき、それからリストがデータベースにアクセスできるよう設定する必要があります。
sympa.conf の関連するパラメータ db_type、db_name、 db_host、db_user、 db_passwd。
Sympa を Oracle データベースとインタフェースしているときは、
db_name を SID にします。ORACLE_HOME 環境変数を sympa.conf の db_env パラメータで設定しなければなりません。
これで、すべてのリストでデータベースを使うよう設定ができました (ただし、user_data_source リストパラメータを file か include
こうして、Sympa subscribers subscribers.db.dump subscribers.db.dump の名前を subscribers に変え、user_data_source パラメータを変更します)。
翻訳作業については 訳語について も参照してください。