centos安装mysql groonga存储引擎

post by rocdk890 / 2012-6-7 17:16 Thursday linux技术
  最近几天都没有发文章,是因为公司让我安装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引擎已经可以使用了,好了,就到这里吧.
夜空- 本站版权
1、本站所有主题由该文章作者发表,该文章作者与夜空享有文章相关版权
2、其他单位或个人使用、转载或引用本文时必须同时征得该文章作者和夜空的同意
3、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
4、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
5、原文链接:blog.slogra.com/post-209.html

标签: centos mysql groonga mroonga 全文搜索引擎 mysql引擎

  1. 2012-07-04 11:07
    @Lucas:如果不加的话,show engines出来的引擎名字就不是groonga了哦
  1. gravatar Lucas
    2012-07-04 00:38
    另外 想再請教大大一下

    CREATE FUNCTION last_insert_grn_id RETURNS INTEGER soname 'ha_groonga.so';

    這一行是什麼意思?可以不加嗎?
  1. gravatar Lucas
    2012-07-04 00:22
    大大 我想再請問一下

    你說放在/root底下的那個mysql

    是當初你解壓縮完的那個mysql沒錯吧?

    換言之就是 -with-mysql-source 後面的路徑 是當初下載完mysql source code

    解壓縮出來的資料夾 對吧?

    另外 想再請問大大一個問題

    為什麼最後 安裝plugin時 你是選擇groonga而不是mroonga?

    因為 我看我的plugin資料夾裡面 兩個都有~
  1. 2012-07-03 17:23
    @Lucas:你这个问题,我没有遇到过,但估计是没有创建mysql用户.
  1. gravatar Lucas
    2012-06-29 15:26
    請問大大的MySQL是自己build source code嗎?

    如果是的話 大大應該是用cmake來安裝吧?

    我現在碰到一個問題 就是我輸入

    cmake . \
    -DCMAKE_INSTALL_PREFIX=/usr/mysql \
    -DMYSQL_DATADIR=/usr/mysql/data

    來安裝時 他卻顯示

    contains unsupported character '='.

    Please use a different source directory name.

    不知道大大有沒有碰過類似的問題....
  1. 2012-06-29 11:24
    @Lucas:是的 我的是放在/root下的
  1. gravatar Lucas
    2012-06-28 19:27
    我想再請問大大一下

    安裝mroonga時 MySQL的source資料夾要怎麼確定在哪?

    以上面的例子來看 大大的source資料夾是在/root底下對吧?
  1. 2012-06-28 10:58
    @Lucas:根据这句If you want to use indexes of tokenizing of each morpheme for full text search, install MeCab before installing groonga,所以才需要装mecab.
  1. gravatar Lucas
    2012-06-28 01:55
    大大~請問一下 如果不安裝mecab的話 是否還會有日文分詞系統呢?

    因為mroonga本身不是就支持日文分詞嗎? 還是我搞錯了?

评论: