バイナリパッケージを使用したインストールでは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 update
% 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
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo aptitude -V -D -y install groonga-normalizer-mysql
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
/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 apt-get update
% sudo apt-get -y --allow-unauthenticated install groonga-keyring
% sudo apt-get update
% sudo apt-get -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo apt-get -y install groonga-tokenizer-mecab
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo apt-get -y install groonga-normalizer-mysql
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
/etc/apt/sources.list.d/groonga.list:
deb http://packages.groonga.org/debian/ jessie main
deb-src http://packages.groonga.org/debian/ jessie main
インストール:
% sudo apt-get update
% sudo apt-get -y --allow-unauthenticated install groonga-keyring
% sudo apt-get update
% sudo apt-get -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo apt-get -y install groonga-tokenizer-mecab
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo apt-get -y install groonga-normalizer-mysql
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
/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 update
% 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
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo aptitude -V -D -y install groonga-normalizer-mysql
ノート
'utf8_unicode_ci'や'utf8mb4_unicode_ci'は今後のリリースでサポート予定です。
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
ノート
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 update
% sudo apt-get -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo apt-get -y install groonga-tokenizer-mecab
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo apt-get -y install groonga-normalizer-mysql
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
ノート
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 update
% sudo apt-get -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo apt-get -y install groonga-tokenizer-mecab
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo apt-get -y install groonga-normalizer-mysql
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
ノート
Ubuntu本家のuniverseセクションもインストール対象としておくこと
ノート
セキュリティアップデートリポジトリもインストール対象としておくこと
/etc/apt/sources.list.d/groonga.list:
deb http://packages.groonga.org/ubuntu/ quantal universe
deb-src http://packages.groonga.org/ubuntu/ quantal universe
インストール:
% sudo apt-get update
% sudo apt-get -y --allow-unauthenticated install groonga-keyring
% sudo apt-get update
% sudo apt-get -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo apt-get -y install groonga-tokenizer-mecab
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo apt-get -y install groonga-normalizer-mysql
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
ノート
Ubuntu本家のuniverseセクションもインストール対象としておくこと
ノート
セキュリティアップデートリポジトリもインストール対象としておくこと
/etc/apt/sources.list.d/groonga.list:
deb http://packages.groonga.org/ubuntu/ raring universe
deb-src http://packages.groonga.org/ubuntu/ raring universe
インストール:
% sudo apt-get update
% sudo apt-get -y --allow-unauthenticated install groonga-keyring
% sudo apt-get update
% sudo apt-get -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo apt-get -y install groonga-tokenizer-mecab
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo apt-get -y install groonga-normalizer-mysql
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
ノート
Ubuntu本家のuniverseセクションもインストール対象としておくこと
ノート
セキュリティアップデートリポジトリもインストール対象としておくこと
/etc/apt/sources.list.d/groonga.list:
deb http://packages.groonga.org/ubuntu/ saucy universe
deb-src http://packages.groonga.org/ubuntu/ saucy universe
インストール:
% sudo apt-get update
% sudo apt-get -y --allow-unauthenticated install groonga-keyring
% sudo apt-get update
% sudo apt-get -y install mysql-server-mroonga
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo apt-get -y install groonga-tokenizer-mecab
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo apt-get -y install groonga-normalizer-mysql
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
CentOS 5では、Mroonga 3.09のリリースからディストリビューション由来のMySQLパッケージ(MySQL 5.5系)を利用します。
インストール:
% sudo rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-1.noarch.rpm
% sudo yum makecache
% sudo yum install -y mysql55-mysql-server
% sudo service mysqld start
% sudo yum install -y mysql55-mroonga
(% /usr/bin/mysqladmin -u root password 'new-password')
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo yum install -y groonga-tokenizer-mecab
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo yum install -y install groonga-normalizer-mysql
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
The old version of Mroonga had also provided MySQL 5.6 packages as exceptional case. This is obsolete and not recommended way. The mysql-mroonga package is deprecated on CentOS 5 since Mroonga 3.09. We recommend to use mysql55-mroonga pakcages on CentOS 5.
既にディストリビューション由来のMySQLパッケージがインストール済みの場合には事前に削除する必要があります。
既存のMySQLパッケージを削除:
% sudo yum remove 'mysql*'
インストール:
% sudo rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-1.noarch.rpm
% sudo yum makecache
% sudo yum install -y MySQL-server
% sudo service mysql start
% sudo yum install -y mysql-mroonga
(% /usr/bin/mysqladmin -u root password 'new-password')
CentOS 6用のパッケージはCentOS 5用のパッケージと違い、ディストリビューション由来のMySQLパッケージ(MySQL 5.1系)を利用します。そのため、ディストリビューション由来のMySQLを削除する必要はありません。
インストール:
% sudo rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-1.noarch.rpm
% sudo yum makecache
% 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
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo yum install -y install groonga-normalizer-mysql
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
Fedora 19からはMariaDBがMySQLのデフォルト実装となります。
mroongaには二つの選択肢があり、一つはMariaDBと一緒に使うこと、もう一つはMySQL (community-mysql)と一緒に使うことです。
MySQL (community-mysql)向けにmroongaをインストール:
% sudo rpm -ivh http://packages.groonga.org/fedora/groonga-release-1.1.0-1.noarch.rpm
% sudo yum makecache
% sudo yum install -y mysql-mroonga
MariDB向けにmroongaをインストール:
% sudo rpm -ivh http://packages.groonga.org/fedora/groonga-release-1.1.0-1.noarch.rpm
% sudo yum makecache
% sudo yum install -y mariadb-mroonga
ノート
MariaDBとMySQL (community-mysql)パッケージは排他的です。例えば mysql-mroonga を使うには競合している mariadb パッケージをまず削除する必要があります。
トークナイザーとして MeCab を利用したい場合はgroonga-tokenizer-mecabをインストールしてください。
groonga-tokenizer-mecabをインストール:
% sudo yum install -y groonga-tokenizer-mecab
groonga-tokenizer-mecabをインストール:
% sudo yum install -y groonga-tokenizer-mecab
MySQL互換のCOLLATIONとして'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'を使うには、groonga-normalizer-mysqlパッケージをインストールしてください。
groonga-normalizer-mysqlをインストール:
% sudo yum install -y install groonga-normalizer-mysql
ノート
MySQL互換のCOLLATIONを指定しない場合には、MySQLと互換性のないgroongaの照合順序が使われます。MySQL互換な大文字・小文字を区別しないCOLLATIONは'utf8_general_ci'や'utf8mb4_general_ci'、'utf8_unicode_ci'や'utf8mb4_unicode_ci'です。
インストール:
% brew install https://raw.github.com/mroonga/homebrew/master/mroonga.rb --use-homebrew-mysql
mroongaのWindowsバイナリはMariaDBのバイナリと一緒に提供されます。これは、mroongaのWindows版をビルドするのに いくつかの変更が 必要だからです。
準備中
32bit環境では mariadb-10.0.4-mroonga-3.08-win32.zip をダウンロードして展開します。
For 64-bit environment, download mariadb-10.0.4-mroonga-3.08-winx64.zip and extract it.
その後、mysqldを起動し、mysqlクライアントで接続して"INSTALL PLUGIN"コマンドでインストールします。
mysql> INSTALL PLUGIN mroonga SONAME 'ha_mroonga';
以下のように"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';
スニペット(キーワード周辺のテキスト)を取得するために、mroonga_snippet関数をインストールします。
以下のようにCREATE FUNCTIONを実行します。
mysql> CREATE FUNCTION mroonga_snippet RETURNS STRING SONAME 'ha_mroonga';
mroongaからgroongaのクエリを実行するために、mroonga_command関数をインストールします。
以下のようにCREATE FUNCTIONを実行します。
mysql> CREATE FUNCTION mroonga_command RETURNS STRING SONAME 'ha_mroonga';
ソースコードからインストールする方法を説明します。パッケージがない環境ではソースコードからインストールすることになります。
リリース版のソースコードを利用する場合は packages.groonga.org からtarballをダウンロードしてください。
最新のソースコードを利用する場合は GitHub からcloneして ./autogen.sh を実行してください。(GNU Autotoolsが必要です。)この方法は開発に慣れた方向けなので、そうでない方はtarballを使うことをお勧めします。:
% git clone https://github.com/mroonga/mroonga.git
% cd mroonga
% ./autogen.sh
MySQL 5.5最新版のソースコードをダウンロードし、ビルド&インストールして下さい。
http://dev.mysql.com/downloads/mysql/
mysql-5.5.31を使用し、以下にソースディレクトリが展開されているものと仮定します。
/usr/local/src/mysql-5.5.31
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.31 \
--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.31 \
--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';
スニペット(キーワード周辺のテキスト)を取得するために、mroonga_snippet関数をインストールします。
以下のようにCREATE FUNCTIONを実行します。
mysql> CREATE FUNCTION mroonga_snippet RETURNS STRING SONAME 'ha_mroonga.so';
mroongaからgroongaのクエリを実行するために、mroonga_command関数をインストールします。
以下のようにCREATE FUNCTIONを実行します。
mysql> CREATE FUNCTION mroonga_command RETURNS STRING SONAME 'ha_mroonga.so';
MariaDBにバンドルしてソースコードからインストールする方法を説明します。パッケージがない環境ではソースコードからインストールすることになります。
packages.groonga.org から、mroongaのtarballをダウンロードしてください。
downloads.mariadb.org から、MariaDBのtarballをダウンロードしてください。
groongaが既にインストールされている必要があります。
groongaの最新版をビルド&インストールして下さい。
ここでは/usr/libなどの標準パスにlibgroongaがインストールされているものと仮定します。
MariaDBのtarballの解凍。
tar xvfz mariadb-10.0.2.tar.gz
mroongaのtarballの解凍後、storageディレクトリへ移動。
tar xvfz mroonga-3.03.tar.gz
mv mroonga-3.03 mariadb-10.0.2/storage/mroonga/
"cmake"を実行します。
cd mariadb-10.0.2
cmake .
その後、"make"を実行します。
make
"make install"を実行すると"usr/local/mysql"ディレクトリにMariaDBとmroongaが配置されます。
make install
その後、mysqldを起動し、MariaDBクライアントで接続して"INSTALL PLUGIN"コマンドでインストールします。
mysql> INSTALL PLUGIN mroonga SONAME 'ha_mroonga.so';
以下のように"SHOW ENGINES"コマンドで"mroonga"が表示されればmroongaのインストールは完了です。
mysql> SHOW ENGINES;
+--------------------+---------+------------------------------------------------------------+--------------+------+------------+
| Engine | Support | Comment | Transactions | XA | Savepoints |
+--------------------+---------+------------------------------------------------------------+--------------+------+------------+
| CSV | YES | CSV storage engine | NO | NO | NO |
| PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO |
| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
| MyISAM | DEFAULT | MyISAM storage engine | NO | NO | NO |
| MRG_MyISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
| InnoDB | NO | Supports transactions, row-level locking, and foreign keys | NULL | NULL | NULL |
| mroonga | YES | CJK-ready fulltext search, column store | NO | NO | NO |
| Aria | YES | Crash-safe tables with MyISAM heritage | NO | NO | NO |
+--------------------+---------+------------------------------------------------------------+--------------+------+------------+
8 rows in set (0.01 sec)
続いてUDF(ユーザ定義関数)をインストールします。
INSERTを行った際にgroongaにより割当てられるレコードIDを取得するためのlast_insert_grn_id関数をインストールします。
以下のようにCREATE FUNCTIONを実行します。
mysql> CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_mroonga.so';
スニペット(キーワード周辺のテキスト)を取得するために、mroonga_snippet関数をインストールします。
以下のようにCREATE FUNCTIONを実行します。
mysql> CREATE FUNCTION mroonga_snippet RETURNS STRING SONAME 'ha_mroonga.so';
mroongaからgroongaのクエリを実行するために、mroonga_command関数をインストールします。
以下のようにCREATE FUNCTIONを実行します。
mysql> CREATE FUNCTION mroonga_command RETURNS STRING SONAME 'ha_mroonga.so';
非互換な変更が新しいリリースでもたらされることがあります。もし、そういった非互換がはいる場合にはリリースアナウンスでアナウンスします。
古いバージョンからmroongaをアップグレードする推奨方法のリストがこちらです。
以前のバージョンをお使いなら、アップグレード手順について次のURLを参照してください。
1.20以前からアップグレードするなら、 release-1-20 1.20 リリース を参照してください。
1.20からアップグレードするなら、 2.00 リリース を参照してください。
2.00もしくは2.01からアップグレードするなら、 2.02 リリース を参照してください。
もし2.00以降でマルチカラムインデックスをストレージモードで使用しているなら、 2.03 リリース を参照してください。
もし2.04以降で256マルチカラムインデックスをストレージモードで使用しているなら、 2.03 リリース を参照してください。2.04以降でストレージモードにてSETカラムもしくは要素数が256より少ないENUMを使用している場合は、 2.05 リリース を参照してください。
2.05以降でマルチカラムインデックスをVARCHARやCHAR型に対して使っている場合は、 2.08 リリース を参照してください。
2.08以降でTIMESTAMP型のカラムを使っているテーブルがあれば、データベースを再作成してください。CHAR(N)を主キーとしているテーブルがあれば、インデックスを再作成してください。 それぞれについては 2.09 リリース を参照してください。