以前書いたMySQLにSennaを当てたときのメモが地味に注目を集めているらしく、ときたまSBMにブクマされたりしている。あのときは、お手本がDebianでパスの指定がCentOSと違っていたり、何か自分の環境で用を全うするのに必要な知識が分散していたりして無駄に時間がかかったので、一応CentOSユーザな私がやったことを一括に並べておいて、後から同じことをするのに都合の良いようにするためにあれを書いた。今はTritonnがあり、Tritonnのドキュメントをそのままなぞれば (--prefixとかはちゃんと変える)、それで用が済んでしまう。
ちなみに、今回私がMySQLをmakeしたときのconfigureオプションはこんな感じ:
./configure \ --prefix=/usr \ --with-charset=utf8 \ --with-extra-charsets=complex \ --localstatedir=/var/lib/mysql \ --libexecdir=/var/lib/mysql/bin \ --enable-thread-safe-client \ --enable-local-infile \ --enable-assembler \ --with-pic \ --with-fast-mutexes \ --disable-shared \ --with-zlib-dir=bundled \ --with-big-tables \ --with-yassl \ --with-readline \ --with-archive-storage-engine \ --with-blackhole-storage-engine \ --with-example-storage-engine \ --with-federated-storage-engine \ --with-mysql-idflags=-all-static \ --with-client-idflags=-all-static \ --with-mysql-idflags=-all-static \ --with-mysql-user=mysql \ --with-innodb \ --with-extra-charsets=complex \ --with-senna \ --with-mecab \ --with-unix-socket-path=/var/lib/mysql/mysql.sock
前指定したのと、Tritonnのところに書いてあったのを重ねただけなので、これで良いのかはよく分からん。
それで全文検索システムをより簡単に提供できるようになった。検索用インデックスはMeCab付属のIPA辞書で事足りる。目下の問題は表示用インデックスだ。連続する名詞はひとつにまとめるとか、ちゃんと「接頭詞」とか「接尾」とかを理解するようにすれば、「緑資源開発機構」や「参院選」のような辞書にない語彙も表示できる。しかし、作品名とか略語とかはやっぱり辞書にないとうまく取り出せない。サフィックスアレイを使うって? やっぱり? 勉強しなくちゃ。
「Tritonn(MySQL+Senna)+Mecab+Apahce+PHPをCentOS5にインストールする」も参考になる。