Coreseek安装与测试

1.Coreseek介绍:

Sphinx默认不支持中文索引及检索,基于Sphinx开发了Coreseek全文检索服务器,Coreseek应该是现在用的最多的Sphinx中文全文检索,它提供了为Sphinx设计的中文分词包LibMMSeg包含mmseg中文分词。

2.coreseek安装:

(1).下载中文分词包:http://www.coreseek.cn 到官网下载Coreseek相应的版本

(2).解压安装:tar zxvf coreseek-3.2.14.tar.gz

(3).先进入mmseg-3.2.14下,编译安装:

./configure --prefix=/opt/mmseg

编译过程中报了一个错误:config.status: error: cannot find input file: src/Makefile.in,运行下列指令再次编译就能通过了:automake

编译安装:make && make install

(4).进入csft-3.2.14目录下,安装coreseek:

./configure --prefix=/opt/coreseek --with-mysql --with-mmseg=/opt/mmseg --with-mmseg-includes=/opt/mmseg/include/mmseg/ --with-mmseg-libs=/opt/mmseg/lib/

make && make install

3.修改coreseek配置文件:

cd etc

cp sphinx.conf.dist csft.conf

修改csft.conf:

//主数据源

source main {

//修改以下几行

sql_host = localhost

sql_user = root

sql_pass =

sql_db = test

sql_port = 3306

sql_sock = /var/lib/mysql/mysql.sock

sql_query_pre = SET NAMES utf8

sql_query_pre = SET SESSION query_cache_type=OFF

sql_query = SELECT id,title,content FROM post

sql_query_info = SELECT * FROM post WHERE id=$id

//注释掉以下几行

# sql_attr_uint = group_id

# sql_attr_timestamp = date_added

# sql_ranged_throttle = 0

}

//主数据索引

index main{

//修改以下几行

source = main

path = /opt/coreseek/var/data/main

charset_type = zh_cn.utf-8    //编码格式

charset_dictpath = /opt/mmseg/etc/    #你安装mmseg的目录

//注释掉以下几行

#stopwords = G:\data\stopwords.txt

#wordforms = G:\data\wordforms.txt

#exceptions = /data/exceptions.txt

#charset_type = sbcs

}

//索引器

indexer {

mem_limit = 128M

}

//服务进程

searchd {

//不需要修改

}

4.coreseek测试:

(1).修改/etc/my.cnf:

[mysqld]

character-set-server=utf8

[client]

default-character-set=utf8

(2).查看字符编码:

Coreseek安装与测试_第1张图片

(3).搜索测试:

cd bin

./indexer --all

./search 杍劼

5.php加载sphinx模块:

(1).sphinx集成到php程序中,有两种方式:

sphinx php模块

sphinxapi类:在/usr/local/soft/coreseek-3.2.14/csft-3.2.14/api中,找到sphinxapi.php,通过include这个文件可以使用sphinx函数

(2).通过php连接sphinx来进行搜索,需要以下条件:

数据表有相应数据

建立sphinx配置文件

生成索引

启动sphinxd服务进程,并开启端口9312

用php客户程序去连接sphinx服务

(3).启动sphinx服务:

启动服务进程命令:searchd

-c:指定配置文件

--stop:停止服务

--pidfile:显式指定一个PID文件

-p:指定端口

(4).安装php的sphinx模块:

①.下载解压sphinx模块:

wget http://pecl.php.net/get/sphinx

tar zxvf sphinx

②.编译安装sphinx模块:

cd sphinx-1.3.3/

/opt/php5.5/bin/phpize

./configure --with-php-config=/opt/php5.5/bin/php-config

提示出错:configure: error: Cannot find libsphinxclient headers

③.编译安装libsphinxclient:

cd ../coreseek-3.2.14/csft-3.2.14/api/libsphinxclient/

./configure

make && make install

④.重复第②步,成功后再make && make install

⑤.修改php.ini文件:

[sphinx]

extension=sphinx.so

⑥.重启php-fpm进程:service php5.5-fpm restart

你可能感兴趣的:(Coreseek安装与测试)