CentOS 5.0 へインストール
参考にしたサイト:http://hamapin.com/weblog/2007/03/ludia.html 参考になりました。
CentOS5.0を入手したので、Ludiaを入れてみた。
環境:
VirtualBox on CentOS 5.0 PostgreSQL 8.1.4 Ludia 1.0.0 senna 1.0.4 MeCab 0.9.5
1. VirtualBox上にCentOS5.0をインストールする。
Ludiaインストールに、gcc, c++(g++)が必要になる。
ソースコードをコンパイルしてインストールするので
2. PostgreSQLをインストールする。
postgresql-devel-8.1.4-1.1 が重要!
pg_configが追加されます。 Ludiaコンパイル時に必要
重要そうなrpm一覧:
gcc-4.1.1-52.el5 gcc-c++-4.1.1-52.el5 libgcc-4.1.1-52.el5 libstdc++-devel-4.1.1-52.el5 libstdc++-4.1.1-52.el5 postgresql-8.1.4-1.1 postgresql-server-8.1.4-1.1 postgresql-libs-8.1.4-1.1 postgresql-python-8.1.4-1.1 postgresql-contrib-8.1.4-1.1 postgresql-devel-8.1.4-1.1
3. データベースの初期化をしておく
4. Ludiaをダウンロードするとインストールマニュアル(日本語)
があるので、それを見ながら作業する。
$ tar xvf mecab-0.95.tar.gz $ ./configure $ make # make install
$ tar xvf mecab-ipadic-2.7.0-20060707.tar.gz $ ./configure --with-charset=utf8 $ make # make install
$ ./configure $ make # make install # mkdir /var/senna # echo "DEFAULT_ENCODING utf8" > /var/senna/senna.conf # mkdir /var/senna/log # chown postgres:postgres /var/senna/log
4-4. Ludiaのインストール
$ tar xvf ludia-1.0.0.tar.gz $ ./configure $ make # make install
4-5. PostgreSQLへLudiaの設定を追加する
postgresql.conf へ追記する
custom_variable_classes = 'ludia' ludia.max_n_sort_result = 10000 ludia.enable_seqscan = on ludia.sen_index_flags = 31 ludia.max_n_index_cache = 16
4-6. テスト用DBの作成
$ pg_ctl start $ createuser test-man $ createdb django-db $ psql -f /usr/share/pgsql/pgsenna2.sql django-db $ psql -U test-man django-db
4-7. テスト実行
create table test2 ( a text, b varchar(128)); INSERT INTO test2 VALUES ('本日本を読みました', 'スパン'); INSERT INTO test2 VALUES ('日本誕生', 'スパム'); INSERT INTO test2 VALUES ('誕生は明日です。', 'パム'); CREATE INDEX index2 ON test2 USING fulltext(a); django-db=# select * from test2 where a @@ '本'; a | b --------------------+-------- 本日本を読みました | スパン (1 row) django-db=# select * from test2 where a like '%本%'; a | b --------------------+-------- 本日本を読みました | スパン 日本誕生 | スパム (2 rows)
"本"で、検索したときに1件しかでないです。
すばらしい。
使い方をろくに調べてないので、検索方法が違うかもしれませんが・・・