您的位置:首页 > 其它

ubuntu11.04下 coreseek 4.1 安装小记

2012-02-03 16:37 344 查看
下载coreseek 4.1

su 切换到root

$ tar xzvf coreseek-4.1-beta.tar.gz

##前提:需提前安装操作系统基础开发库及mysql依赖库以支持mysql数据源和xml数据源

##安装mmseg

$ cd mmseg-3.2.14

$ ./bootstrap #输出的warning信息可以忽略,如果出现error则需要解决

$ ./configure --prefix=/usr/local/mmseg3

$ make && make install

$ cd ..

## 安装完成后,mmseg使用的词典和配置文件将自动安装到/usr/local/mmseg3/etc中

##安装coreseek

$ cd csft-4.1

$ sh buildconf.sh #输出的warning信息可以忽略,如果出现error则需要解决

$ ./configure --prefix=/usr/local/coreseek --without-unixodbc --with-mmseg --with-mmseg-includes=/usr/local/mmseg3/include/mmseg/ --with-mmseg-libs=/usr/local/mmseg3/lib/ --with-mysql ##如果提示mysql问题,可以查看MySQL数据源安装说明

$ make && make install

$ cd ..

编码问题

可以在配置文件里加上

sql_query_pre = SET NAMES utf8

尝试解决

启动命令

sudo /usr/local/coreseek/bin/searchd -c /usr/local/coreseek/etc/sphinx.conf.dist

刷新索引

sudo /usr/local/coreseek/bin/indexer -c /usr/local/coreseek/etc/sphinx.conf.dist --all --rotate

当需要查询多个表的内容,

$res = $cl->Query('山东',"test,test1");

但是从查询结果的id 无法区分是从那个表得来的数据

通过配置文件

第一个:

sql_query = SELECT id*10+0,

第二个:

sql_query = SELECT id*10+1,

这样通过取出的id最后一位数字 来判断是从那个表里读出的数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: