バイナリパッケージを使用したインストールではgroonga関連パッケージと共にMySQL関連のパッケージもインストールされます。
32-bit用と64-bit用のパッケージを配布していますが、サーバ用途には64-bitパッケージを利用することをオススメします。32-bit用パッケージはテスト用か開発用にだけ使って下さい。32-bit用パッケージを使った場合は、中程度のサイズのデータでもメモリ不足エラーになることがあります。
それぞれの環境毎にインストール方法を説明します。
/etc/apt/sources.list.d/groonga.list:
deb http://packages.groonga.org/debian/ squeeze main
deb-src http://packages.groonga.org/debian/ squeeze main
インストール:
% sudo aptitude update
% sudo aptitude -V -D -y --allow-untrusted install groonga-keyring
% sudo aptitude -V -D -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo aptitude -V -D -y install groonga-tokenizer-mecab
/etc/apt/sources.list.d/groonga.list:
deb http://packages.groonga.org/debian/ wheezy main
deb-src http://packages.groonga.org/debian/ wheezy main
インストール:
% sudo aptitude update
% sudo aptitude -V -D -y --allow-untrusted install groonga-keyring
% sudo aptitude -V -D -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo aptitude -V -D -y install groonga-tokenizer-mecab
/etc/apt/sources.list.d/groonga.list:
deb http://packages.groonga.org/debian/ unstable main
deb-src http://packages.groonga.org/debian/ unstable main
インストール:
% sudo aptitude update
% sudo aptitude -V -D -y --allow-untrusted install groonga-keyring
% sudo aptitude -V -D -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo aptitude -V -D -y install groonga-tokenizer-mecab
ノート
Ubuntu本家のuniverseセクションもインストール対象としておくこと
ノート
セキュリティアップデートリポジトリもインストール対象としておくこと
/etc/apt/sources.list.d/groonga.list:
deb http://packages.groonga.org/ubuntu/ lucid universe
deb-src http://packages.groonga.org/ubuntu/ lucid universe
インストール:
% sudo apt-get update
% sudo apt-get -y --allow-unauthenticated install groonga-keyring
% sudo apt-get -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo apt-get -y install groonga-tokenizer-mecab
ノート
Ubuntu本家のuniverseセクションもインストール対象としておくこと
ノート
セキュリティアップデートリポジトリもインストール対象としておくこと
/etc/apt/sources.list.d/groonga.list:
deb http://packages.groonga.org/ubuntu/ natty universe
deb-src http://packages.groonga.org/ubuntu/ natty universe
インストール:
% sudo apt-get update
% sudo apt-get -y --allow-unauthenticated install groonga-keyring
% sudo apt-get -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo apt-get -y install groonga-tokenizer-mecab
ノート
Ubuntu本家のuniverseセクションもインストール対象としておくこと
ノート
セキュリティアップデートリポジトリもインストール対象としておくこと
/etc/apt/sources.list.d/groonga.list:
deb http://packages.groonga.org/ubuntu/ oneiric universe
deb-src http://packages.groonga.org/ubuntu/ oneiric universe
インストール:
% sudo apt-get update
% sudo apt-get -y --allow-unauthenticated install groonga-keyring
% sudo apt-get -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo apt-get -y install groonga-tokenizer-mecab
ノート
Ubuntu本家のuniverseセクションもインストール対象としておくこと
ノート
セキュリティアップデートリポジトリもインストール対象としておくこと
/etc/apt/sources.list.d/groonga.list:
deb http://packages.groonga.org/ubuntu/ precise universe
deb-src http://packages.groonga.org/ubuntu/ precise universe
インストール:
% sudo apt-get update
% sudo apt-get -y --allow-unauthenticated install groonga-keyring
% sudo apt-get -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo apt-get -y install groonga-tokenizer-mecab
既にディストリビューション由来のMySQLパッケージがインストール済みの場合には事前に削除する必要があります。
既存のMySQLパッケージを削除:
% sudo yum remove 'mysql*'
インストール:
% sudo rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-0.noarch.rpm
% sudo yum update
% sudo yum install -y MySQL-server
% sudo service mysql start
% sudo yum install -y mysql-mroonga
(% /usr/bin/mysqladmin -u root password 'new-password')
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo yum install -y groonga-tokenizer-mecab
CentOS 6用のパッケージはCentOS 5用のパッケージと違い、ディストリビューション由来のMySQLパッケージ(MySQL 5.1系)を利用します。そのため、ディストリビューション由来のMySQLを削除する必要はありません。
インストール:
% sudo rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-0.noarch.rpm
% sudo yum update
% sudo yum install -y mysql-server
% sudo service mysqld start
% sudo yum install -y mysql-mroonga
(% /usr/bin/mysqladmin -u root password 'new-password')
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo yum install -y groonga-tokenizer-mecab
インストール:
% sudo rpm -ivh http://packages.groonga.org/fedora/groonga-release-1.1.0-0.noarch.rpm
% sudo yum update
% sudo yum install -y mysql-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo yum install -y groonga-tokenizer-mecab
インストール:
% brew install https://raw.github.com/mroonga/homebrew/master/mroonga.rb --use-homebrew-mysql
ソースコードからインストールする方法を説明します。パッケージがない環境ではソースコードからインストールすることになります。
リリース版のソースコードを利用する場合は GitHubのダウンロードページ からtarballをダウンロードしてください。
最新のソースコードを利用する場合は GitHub からcloneして ./autogen.sh を実行してください。(GNU Autotoolsが必要です。)この方法は開発に慣れた方向けなので、そうでない方はtarballを使うことをお勧めします。:
% git clone https://github.com/mroonga/mroonga.git
% mroonga
% ./autogen.sh
MySQL 5.5最新版のソースコードをダウンロードし、ビルド&インストールして下さい。
http://dev.mysql.com/downloads/mysql/
mysql-5.5.22を使用し、以下にソースディレクトリが展開されているものと仮定します。
/usr/local/src/mysql-5.5.22
MySQLのバイナリが以下にインストールされているものと仮定します。
/usr/local/mysql
groongaの最新版をビルド&インストールして下さい。
ここでは/usr/libなどの標準パスにlibgroongaがインストールされているものと仮定します。
以下のように --with-mysql-source でMySQLソースコードディレクトリ、 --with-mysql-config でmysql_configコマンドのパスを指定してconfigureを実行します。
./configure \
--with-mysql-source=/usr/local/src/mysql-5.5.22 \
--with-mysql-config=/usr/local/mysql/bin/mysql_config
groongaを/usr/libなど標準のパス以外にインストールした場合はPKG_CONFIG_PATHを指定する必要があります。例えば、ーーprefix=$HOME/localでgroongaをインストールした場合は以下のようにします。:
./configure \
PKG_CONFIG_PATH=$HOME/local/lib/pkgconfig \
--with-mysql-source=/usr/local/src/mysql-5.5.22 \
--with-mysql-config=/usr/local/mysql/bin/mysql_config
その後、"make"を実行します。
make
"make install"を実行するとMySQLのプラグイン用ディレクトリにha_mroonga.soが配置されます。
make install
その後、mysqldを起動し、mysqlクライアントで接続して"INSTALL PLUGIN"コマンドでインストールします。
mysql> INSTALL PLUGIN mroonga SONAME 'ha_mroonga.so';
以下のように"SHOW ENGINES"コマンドで"mroonga"が表示されればmroongaのインストールは完了です。
mysql> SHOW ENGINES;
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| Engine | Support | Comment | Transactions | XA | Savepoints |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
| mroonga | YES | Fulltext search, column base | NO | NO | NO |
| MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
| CSV | YES | CSV storage engine | NO | NO | NO |
| MyISAM | DEFAULT | Default engine as of MySQL 3.23 with great performance | NO | NO | NO |
| InnoDB | YES | Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
+------------+---------+------------------------------------------------------------+--------------+------+------------+
6 rows in set (0.00 sec)
続いてUDF(ユーザ定義関数)をインストールします。
INSERTを行った際にgroongaにより割当てられるレコードIDを取得するためのlast_insert_grn_id関数をインストールします。
以下のようにCREATE FUNCTIONを実行します。
mysql> CREATE FUNCTION last_insert_grn_id RETURNS INTEGER soname 'ha_mroonga.so';