centos安装mysql groonga存储引擎
最近几天都没有发文章,是因为公司让我安装mysql groonga全文检索引擎去了,groonga是一款可嵌入式的全文搜寻引擎,具有储存功能和全文搜寻的检索功能.
系统:centos 5.5 (32位)
需要的软件包:groonga-2.0.3.tar.gz mroonga-2.03.tar.gz
1.安装前准备
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel \ freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel \ glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel \ curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devellibidn libidn-devel \ openssl openssl-devel openldap openldap-devel nss_ldap \ openldap-clients openldap-servers libtool libtool-devel
我这里是基于多个mysql环境下,只对一个mysql进行安装groonga,多mysql安装请看centos单机编译安装多个mysql共存这篇文章.
wget http://packages.groonga.org/source/groonga/groonga-2.0.3.tar.gz wget http://cloud.github.com/downloads/mroonga/mroonga/mroonga-2.03.tar.gz
2.安装mecab
大家可以看我这篇linux安装日文分词(mecab)文章.
3.安装groonga
tar zxf groonga-2.0.3.tar.gz && cd groonga-2.0.3
./configure --prefix=/usr/local/groonga
看到这个图就表示没有问题可以继续make
make && make install
4.安装mroonga
./configure PKG_CONFIG_PATH=/usr/local/groonga/lib/pkgconfig/ \ --with-mysql-source=/root/mysql-5.5.18 \ --with-mysql-config=/usr/local/mysql07/bin/mysql_config
没有问题就执行make
make && make install
5.mysql中加入引擎
/usr/local/mysql07/bin/mysql -u root -p
这里我是加的3307这个端口的mysql
进入mysql后执行
show engines;
可以看到里面没有groonga引擎,然后执行
INSTALL PLUGIN groonga SONAME 'ha_groonga.so'; CREATE FUNCTION last_insert_grn_id RETURNS INTEGER soname 'ha_groonga.so';
然后再执行show engines来查看引擎
可以看到已经有groonga引擎了.
6.验证
在mysql中执行
mysql> create database tt; mysql> use tt mysql> create table `test` ( `id` int(11) NOT NULL, `name` varchar(45) NOT NULL, `notes` text,FULLTEXT INDEX (`notes`) ) ENGINE=groonga DEFAULT CHARSET=utf8; mysql> SELECT * FROM test where MATCH(notes) AGAINST("CSS"); Empty set (0.01 sec)
对其进行查询可以发现groonga引擎已经可以使用了,好了,就到这里吧.
CREATE FUNCTION last_insert_grn_id RETURNS INTEGER soname 'ha_groonga.so';
這一行是什麼意思?可以不加嗎?
你說放在/root底下的那個mysql
是當初你解壓縮完的那個mysql沒錯吧?
換言之就是 -with-mysql-source 後面的路徑 是當初下載完mysql source code
解壓縮出來的資料夾 對吧?
另外 想再請問大大一個問題
為什麼最後 安裝plugin時 你是選擇groonga而不是mroonga?
因為 我看我的plugin資料夾裡面 兩個都有~
如果是的話 大大應該是用cmake來安裝吧?
我現在碰到一個問題 就是我輸入
cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/mysql \
-DMYSQL_DATADIR=/usr/mysql/data
來安裝時 他卻顯示
contains unsupported character '='.
Please use a different source directory name.
不知道大大有沒有碰過類似的問題....
安裝mroonga時 MySQL的source資料夾要怎麼確定在哪?
以上面的例子來看 大大的source資料夾是在/root底下對吧?
因為mroonga本身不是就支持日文分詞嗎? 還是我搞錯了?