ソースからのインストール(MySQL 5.5 以上)

ソース配布からインストールするためには、MySQLのソースコードが必要です。
  1. MySQLのソース配布をダウンロードし解凍します。
  2. http://q4m.kazuhooku.com/dist/からQ4Mのソース配布をダウンロードします。
  3. Q4M ソース配布を MySQL ソースツリーのstorage/ ディレクトリの下に解凍し、作成したディレクトリを q4m に名前を変えます (例えば、mv storage/q4m-0.x.y storage/q4m)。
  4. MySQLをビルド (例えば、CMakeを適切な引数で実行し、MySQLのソースツリーのルートディレクトリで makeします) し、Q4Mプラグイン (storage/q4m/libqueue_engine.so) がMySQLのビルドプロセスの一部としてビルドされるようにします。
  5. プラグインをMySQLインストレーションの plugins/ ディレクトリにコピーします。
  6. プラグインを有効にするために storage/q4m/support-files/install.sql を実行します。
  7. (任意) テストスイートを実行します

ソースからのインストール (MySQL 5.1)

ソース配布からインストールするためには、MySQLのソースコードが必要です。
  1. MySQL5.1をダウンロードおよびビルドします(インストレーションは必須ではありませんが、Q4MをMySQLバイナリ配布物の中にインストールするつもりであれば、MySQLソース配布物をビルドするのと同じ構成オプションを使うようにしてください。MySQLの構成は bin/mysqlbug script の中で見つけることができます)。
  2. http://q4m.kazuhooku.com/dist/からQ4Mのソース配布をダウンロードします。
  3. Q4M配布物を解凍します。
  4. configureを実行します。
  5. make を実行します。
  6. make install を実行します。
  7. support-files/install.sql を実行します。
  8. (任意) テストスイートを実行します
以下はQ4Mをconfigureする時に重要なオプションです。
--with-mysql=mysql-source-dir
MySQLソースコードのディレクトリを設定します(必須)
--prefix=mysql-dir
MySQL 5.1 がインストールされるディレクトリを設定します(任意)
--with-debug
MySQLが --with-debug オプションを使ってビルドされる場合、Q4Mもこのオプションを使ってビルドされなければなりません。そうしなければMySQLサーバはクラッシュするでしょう。(任意)
--with-sync=yes|no|fdatasync|fsync|fcntl
ディスク同期メソッドを選択します(デフォルト:yes)。Mac OS XではFcntlだけが利用可能です; そして遅いです。パフォーマンスの問題がある場合は、この値を変更すると良いでしょう。
--enable-mmap
データの読み込みにmemory-mapped ファイルを使用する(デフォルト:yes)。
--with-delete=pwrite|msync
行削除のメソッド。pwriteを使用するかあるいはmmapedファイルを直接書き込むかどうか(デフォルト:pwrite)。

インストレーションのテスト

インストレーションをテストするには、run_tests.pl を実行する。DBI 環境変数を使ってデータベースの場所を設定することができます。DBI_USER および DBI_PASSWORD 変数も利用可能です。以下のような出力が表示されるべきです。
$ DBI='dbi:mysql:database=test;host=kazdev;port=3307' ./run_tests.pl
t/01-base................ok
t/02-queue...............ok
t/03-queue-error-wait....ok
t/03-queue-error.........ok
t/04-blob................ok
t/05-multireader.........

Multireader benchmark result:
    Number of messages: 6400
    Number of readers:  32
    Elapsed:            3.366 seconds
    Throughput:         1901.245 mess./sec.

t/05-multireader.........ok
All tests successful.
Files=6, Tests=5370, 140 wallclock secs (115.80 cusr +  5.92 csys = 121.72 CPU)
$ 

Q4Mのソースリポジトリ

Q4Mのソースリポジトリは http://github.com/q4m/q4m/ にあります。
TOP
inserted by FC2 system