正在加载中……
最新消息:欢迎大家访问,导航分类不完善,如果找不到自己想要的文章,可以通过【关键词】来进行搜索,^_^!

CentOS6.2 安装Coreseek(Sphinx)详细教程

Linux专题 REKFAN.COM 9494浏览 0评论

更多


       Sphinx是一个基于SQL的全文检索引擎,可以结合mysql,postgresql做全文搜索,它可以提供比数据库本身更专业的搜索功能,但对中文检索并不友好。而coreseek就是基于sphinx针对中文搜索研发出来的软件, 适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/文献检索、信息检索、数据挖掘等应用场景。http://blog.rekfan.com/?p=136
Coreseek是一款开源的支持中文的全文检索应用,基于Sphinx开发,而且有自己的中文分词词库,因此适合中文网站构建自己的搜索引擎。

测试环境:
CentOS-6.2-x86_64 

注:本次测试rekfan已经提前将mysql安装好了,大家测试的时候务必要先将mysql安装好!http://blog.rekfan.com/?p=136

1.下载coreseek软件
[root@rekfan.com 下载]# wget http://www.coreseek.cn/uploads/csft/4.0/coreseek-4.0.1-beta.tar.gz

2.解压软件包
[root@rekfan.com 下载]# tar xzvf coreseek-4.0.1-beta.tar.gz

Coreseek版本:
coreseek-4.0.1-beta.tar.gz里面包含下面几个目录
csft-4.0.1 ----- coreseek源代码
mmseg-3.2.14 ---- mmseg源代码
testpack ---- 测试配置和数据包
README.txt ---- 查看解压缩出来的目录结构
 
3.安装依赖软件
[root@rekfan.com 下载]# yum install gcc gcc-c++ libtool autoconf automake imake mysql-devel libxml2-devel expat-devel 

4.安装mmseg
[root@rekfan.com 下载]# cd coreseek-4.0.1-beta
[root@rekfan.com coreseek-4.0.1-beta]# cd mmseg-3.2.14
[root@rekfan.com mmseg-3.2.14]# cd ./bootstrap    #输出的warning信息可以忽略,如果出现error则需要解决
[root@rekfan.com mmseg-3.2.14]# ./configure --prefix=/usr/local/mmseg
[root@rekfan.com mmseg-3.2.14]#  make && make install
[root@rekfan.com mmseg-3.2.14]# cd ..

5.安装coreseek
# cd csft-3.2.14 或者 cd csft-4.0.1 或者 cd csft-4.1
[root@rekfan.com coreseek-4.0.1-beta]# cd csft-4.0.1
[root@rekfan.com csft-4.0.1]# sh buildconf.sh #输出的warning信息可以忽略,如果出现error则需要解决
[root@rekfan.com csft-4.0.1]#  ./configure --prefix=/usr/local/coreseek --without-unixodbc --with-mmseg --with-mmseg-includes=/usr/local/mmseg/include/mmseg/ --with-mmseg-libs=/usr/local/mmseg/lib/ --with-mysql ##如果提示mysql问题,可以
查看MySQL数据源安装说明
[root@rekfan.com csft-4.0.1]# make && make install
[root@rekfan.com csft-4.0.1]# cd ..

6.测试mmseg分词,coreseek搜索(需要预先设置好字符集为zh_CN.UTF-8,确保正确显示中文)
[root@rekfan.com coreseek-4.0.1-beta]# cd testpack
[root@rekfan.com testpack]#  cat var/test/test.xml    #此时应该正确显示中文
[root@rekfan.com testpack]#  /usr/local/mmseg/bin/mmseg -d /usr/local/mmseg/etc var/test/test.xml[root@rekfan.com testpack]#    /usr/local/coreseek/bin/indexer -c etc/csft.conf --all
[root@rekfan.com testpack]#   /usr/local/coreseek/bin/search -c etc/csft.conf 网络搜索
http://blog.rekfan.com/?p=136

7.配置测试,测试是否可以正确运行
[root@rekfan.com testpack]#  /usr/local/coreseek/bin/indexer -c /usr/local/coreseek/etc/sphinx-min.conf.dist
##以下为正常测试时的提示信息:
    Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release (r2117)]
    Copyright (c) 2007-2010,
    Beijing Choice Software Technologies Inc (http://www.coreseek.com)

     using config file '/usr/local/coreseek/etc/sphinx-min.conf.dist'...
    total 0 reads, 0.000 sec, 0.0 kb/call avg, 0.0 msec/call avg
    total 0 writes, 0.000 sec, 0.0 kb/call avg, 0.0 msec/call avg
##
##csft-4.0版显示:ERROR: nothing to do.
##
##至此,coreseek基础环境可以正常安装,我们可以开始后续的工作啦。

8.建立索引并开启coreseek中文全文检索服务

[root@rekfan.com coreseek-4.0.1-beta]# cd testpack

8.1建立索引

[root@rekfan.com coreseek-4.0.1-beta]#  /usr/local/coreseek/bin/indexer -c etc/csft_mysql.conf

8.2建立全部索引

[root@rekfan.com coreseek-4.0.1-beta]#  /usr/local/coreseek/bin/indexer -c etc/csft_mysql.conf –all

8.3 启动coreseek服务

[root@rekfan.com coreseek-4.0.1-beta]#  /usr/local/coreseek/bin/searchd -c etc/csft_mysql.conf

如要停止搜索服务,请使用

[root@rekfan.com coreseek-4.0.1-beta]# /usr/local/coreseek/bin/searchd -c etc/csft_mysql.conf –stop

如要已启动服务,要更新索引,请使用

[root@rekfan.com coreseek-4.0.1-beta]# /usr/local/coreseek/bin/indexer -c etc/csft_mysql.conf –all –rotate

9.可能遇到的问题及解决方法:
http://blog.rekfan.com/?p=136
##如果提示libtool: unrecognized option `--tag=CC' ,请查看libtool问题解决方案

##有的系统下可能出现:expected `;' before ‘CSphTokenizer_UTF8SpaceSeg’,
##或者出现:configure: WARNING: unrecognized options: --with-mmseg, --with-mmseg-includes, --with-mmseg-libs
##是因为你没有进行随后的sh buildconf.sh操作
##生成当前系统对应的编译配置文件
##需要使用以下指令:
$ sh buildconf.sh

## Linux环境下,如遇到pthread问题,请先直接执行以下指令在进行configur:
$ LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
$ export LD_LIBRARY_PATH

## 如果出现undefined reference to `libiconv'的类似错误,可以按照如下方法处理:
##方法一:(Linux使用)
## 直接执行:export LIBS="-liconv"
##然后make clean,再次configure后,进行编译安装make && make install
## 方法二:
## 首先configure,然后vim src/makefile
## 在其中搜索lexpat,在其后加上 -liconv
## 修改后该行应该为:-lexpat -liconv -L/usr/local/lib
## 然后再次make && make install
## 方法三:
## 首先configure,然后vim config/config.h
## 在其中搜索USE_LIBICONV,将其后的1修改为0
## 然后再次make && make install
http://blog.rekfan.com/?p=136
官方文档:http://www.coreseek.cn/products-install/install_on_bsd_linux/

转载请注明:|REKFAN|系统运维| » CentOS6.2 安装Coreseek(Sphinx)详细教程

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址