Sympa Logo
Translations of this page:

Sympa のデータベース

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 モジュールで使えるようになっているかどうか調べてください。

Perl モジュールのインストール

Sympa はデータベースシステムとのやりとりに DBI と データベースシステム用の DBD を使います。DBIDBD::データベース が CPAN モジュールとして配布されています (たとえば MySQL ならば Msql-Mysql モジュール)。モジュールのインストールの詳細については「Perl と CPAN モジュールのインストール」を参照してください。

Sympa データベースの作成

データベースの構成

データベースの自動作成・更新

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 のデータベースを作成するスクリプト

  • SQLite のデータベースを作成するスクリプト

  • PostgreSQL のデータベースを作成するスクリプト

  • Sybase のデータベースを作成するスクリプト

  • Oracle のデータベースを作成するスクリプト

mysqlpsqlsqlplus のような簡易 SQL シェルを使ってスクリプトを実行できます。

例:

# mysql  < create_db.mysql

データベースの権限設定

sympa データベースへのアクセスを制限することを強くお勧めします。そうしておいて、sympa.confdb_userdb_passwd を設定します。

MySQL では:

grant all on sympa.* to sympa@localhost identified by 'your_password';
flush privileges;

読者データのインポート

データベーステーブルの拡張

データベース中の Sympa ログ

Sympa の設定

  Sympa に教えておき、それからリストがデータベースにアクセスできるよう設定する必要があります。

sympa.conf の関連するパラメータ db_typedb_namedb_hostdb_userdb_passwd

Sympa を Oracle データベースとインタフェースしているときは、

これで、すべてのリストでデータベースを使うよう設定ができました (ただし、user_data_source リストパラメータを fileinclude 

こうして、Sympa subscribers  subscribers.db.dump subscribers.db.dump の名前を subscribers に変え、user_data_source パラメータを変更します)。

====== ======

Sympa and its database の 2008/06/25 14:46 の版をもとに翻訳しました。もとの文書の更新に気づいた方は、差分を参照して更新してください。

翻訳作業については 訳語について も参照してください。

ja/manual/database.txt · 最終更新: 2009/03/28 05:21 (外部編集)

The Sympa software is provided by RENATER
Faq | News | Contact | Legal Notices