Q4Mとは
Q4Mは、MySQLのプラグインとして動作するメッセージキューです。
開発は奥 一穂さんが行っており、GPLライセンスのもと配布されています。
DeNAやmixiでも利用されています。
Q4Mを利用するためにはMySQL5.1以上が必要になります。
今回はCentOS 5.5のMySQL5.1上でQ4Mをインストールします。
MySQL 5.1をインストール
MySQL 5.1をRPMでインストールしたいので、まずは既にインストールされているMySQL 5.0をアンインストールします。
$ sudo yum remove mysql-server mysql
依存してるMySQLの各種言語ライブラリもアンインストールされます。
これから使用するときは別途インストールしなきゃいけないと思うとちょっとめんどうな気持ちになってきましたが…。
http://dev.mysql.com/downloads/mysql/ から各RPMをダウンロードします。
- MySQL-client-5.1.50-1.glibc23.x86_64.rpm
- MySQL-devel-5.1.50-1.glibc23.x86_64.rpm
- MySQL-server-5.1.50-1.glibc23.x86_64.rpm
- MySQL-shared-5.1.50-1.glibc23.x86_64.rpm
- MySQL-community-5.1.50-1.rhel5.src.rpm
src.rpmも使用するのでダウンロードしておきます。
まず、各MySQLのRPMをインストールします。
$ sudo rpm -ivh MySQL-*.x86_64.rpm
次にsrc.rpmをリビルドします。
$ sudo rpmbuild –recompile –define ‘community 1′ MySQL-community-5.1.50-1.rhel5.src.rpm
これが意外と時間かかりました。
コーヒーでも飲んで待ってましょう。
ちなみに途中でテストでエラー吐いて止まったんですが、そのまま続けてもOKでした。
もしや、ソースだけあればOKなのか…?
Q4Mをビルドしてインストール
http://q4m.31tools.com/dist/ からQ4M(http://q4m.31tools.com/dist/q4m-0.9.4.tar.gz)をダウンロードします。
各バージョンのMySQL用のバイナリもありますが、今回はソースからビルドします。
下記のようにconfigure、make、make installします。
$ ./configure --with-mysql=/usr/src/redhat/BUILD/mysql-5.1.50/ CXXFLAGS="-I/usr/include/mysql" \
--libdir=/usr/lib64/mysql/plugin/
$ make
$ sudo make install
最後にPluginをインストールするためのSQLを発行して終了です。
$ mysql -u root -p -f mysql < support-files/install.sql
実際にMySQLにログインしてPluginが有効になっているか確認します。
mysql> show plugins;
+