Coreseek 是基于Sphinx开发中文搜索软件。 具体安装方法参考官网http://www.coreseek.cn/.
我应用于linux+mysql平台,解决以前windows +mssql搜索速度不满意的问题。
应用中,有几个问题,记录下处理方法,备查。
1.报libmysqlclient.so.16.0错误,找不到文件
需做文件链接
64位
ln -f -s /usr/local/mysql/lib/mysql/libmysqlclient.so.16.0.0 /usr/lib64/libmysqlclient.so.16
2.使用sphinxse二次以上查询汇总无记录
SHOW STATUS LIKE 'sphinx_%';
无值。
原因为数据库缓存,查询时加上 sql_no_cache
select sql_no_cache a.* from t1 a join tsphinx_t1 b on a.id=b.id where query='';
SHOW STATUS LIKE 'sphinx_%';
3 .分词词典维护
词典的构造
mmseg -u unigram.txt
该命令执行后,将会在unigram.txt所在目录中产生一个名为unigram.txt.uni的文件,将该文件改名为uni.lib,完成词典的构造。需要注意的是,unigram.txt需要预先准备,并且编码格式必须为UTF-8编码。
词典文件格式:
....
雷锋班 1
x:1
槽体 1
x:1
配给 1
x:1
....
其中,每条记录分两行。
其中,第一行为词项,其格式为:[词条]\t[词频率]。 词频率 一般为1,对于非单字词,词频率处必须为1。
第二行为占位项,一般为 x:1。