かなり前のバージョンから同梱されているので有効にする。
INSTALL PLUGIN Mroonga SONAME 'ha_mroonga.so'; CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_mroonga.so'; CREATE FUNCTION mroonga_snippet RETURNS STRING SONAME 'ha_mroonga.so'; CREATE FUNCTION mroonga_command RETURNS STRING SONAME 'ha_mroonga.so'; CREATE FUNCTION mroonga_escape RETURNS STRING SONAME 'ha_mroonga.so';
有効なったのを確認。
MariaDB [demo2]> SHOW ENGINES; +--------------------+---------+-------------------------------------------------------------------------------------------------+--------------+------+------------+ | Engine | Support | Comment | Transactions | XA | Savepoints | +--------------------+---------+-------------------------------------------------------------------------------------------------+--------------+------+------------+ ~省略~ | Mroonga | YES | CJK-ready fulltext search, column store | NO | NO | NO | ~省略~ +--------------------+---------+-------------------------------------------------------------------------------------------------+--------------+------+------------+
エンジンに Mroongaを指定してフルテキストインデックス付きのテーブルを作る。
CREATE TABLE demouni_list( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), FULLTEXT INDEX (col_name_2) ) ENGINE = Mroonga DEFAULT CHARSET utf8;
もしくは既存のテーブルのエンジンを Mroongaに変更&フルテキストインデックスを作成。
alter table demounit_list engine=Mroonga; alter table demounit_list add fulltext index (name);
検索してみる。
select no from demounit_list where match(demounit_list.name) against('+DC' in boolean mode);