1、bin\csft_mysql.conf:
#源定义
source mysql
{
type = mysql
sql_host = localhost
sql_user = root
sql_pass = merry05
sql_db = test
sql_port = 3306
sql_query_pre = SET NAMES utf8
sql_query = SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title,content FROM documents
#sql_query第一列id需为整数
#title、content作为字符串/文本字段,被全文索引
sql_attr_uint = group_id #从SQL读取到的值必须为整数
sql_attr_timestamp = date_added #从SQL读取到的值必须为整数,作为时间属性
sql_query_info = SELECT * FROM documents WHERE id=$id #命令行查询时,从数据库读取原始数据信息
sql_query_post_index = REPLACE INTO counter (uid,maxid) VALUES (1,$maxid)
}
#index定义
index mysql
{
source = mysql #对应的source名称
path = var/data/mysql
docinfo = extern
mlock = 0
morphology = none
min_word_len = 1
html_strip = 0
charset_dictpath = etc/ #Windows环境下设置,/符号结尾
charset_type = zh_cn.utf-8
#charset_table=......
ngram_len=0
}
source delta:mysql
{
sql_query_pre = SET NAMES utf8
sql_query = SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title,content FROM documents WHERE id>(SELECT maxid FROM counter WHERE uid=1)
}
#增量索引
index delta:mysql
{
source = delta #对应的source名称
path = var/data/mysql_delta #这里的path要与mysql不一样,不然会运行时错误,进程强制退出
}
#全局index定义
indexer
{
mem_limit = 128M
}
#searchd服务定义
searchd
{
listen = 9312
read_timeout = 5
max_children = 30
max_matches = 1000
seamless_rotate = 0
preopen_indexes = 0
unlink_old = 1
pid_file = var/log/searchd_mysql.pid
log = var/log/searchd_mysql.log
query_log = var/log/query_mysql.log
}
注解:mysql为主索引,delta为增量索引
2、进行索引
bin\indexer --config etc\csft_mysql.conf mysql
3、启动searchd进程
bin\searchd -c etc\csft_mysql.conf --pidfile
注解:--pidfile这个选项一定要添加,强制生成pid,不然在合并索引时会报pid文件无法打开错误(这项非常重要)
4、生成增量索引
bin\indexer --config etc\csft_mysql.conf delta
5、主索引和增量索引合并
bin\indexer --config etc\csft_mysql.conf --merge mysql delta --rotate
在searchd进程运行时--rotate选项一定要添加,详见文档
如果要在合并,将某些文档移出索引时,需要:
bin\indexer --config etc\csft_mysql.conf --merge mysql delta --rotate --merge-dst-range group_id 2 2
注解:--merge-dst-range是合并生成主索引的范围开关;这句的意思是只有主索引的group_id属性为2,并且子索引的group_id属性为2,才能被合并生成;否则会被过滤掉,移出主索引。
过滤器可以多个,并且全部满足时才能在最终合并的索引出现
分享到:
相关推荐
详细说明sphinx+coreseek安装、配置、php很用
coreseek编译安装的错误处理 操作实例 和实时索引 亲自测试 无误
根据CoreSeek快速安装遇到的问题做了进一步的补充和添加了解决问题的方法,如遇到类似问题能尽快的找到解决的办法,更融合了网上别的重要参考资料。
Coreseek 是一款可供企业使用的、基于Sphinx(可独立于Sphinx原始版本运行)中文全文检索/搜索软件,以GPLv2许可协议开源发布,专攻中文搜索和信息处理领域,适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/...
centos 6.5安装coreseek,亲测ok coreseek-3.2.14
中文的sphinx coreseek,搜索引擎,搭配Sphinx进行中文分词搜索
Coreseek的windows版本,因为官网打不开,因此上传此。 搭配Sphinx进行中文分词搜索
sphinx中文分词
Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和信息处理领域,适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/文献检索、信息检索、数据挖掘等...
coreseek mysql 索引配置文件 增量索引
coreseek连接oracle数据库所需要的扩展包安装程序
coreseek4.1 window版本,sphinx 中文检索搜索引擎!
主要介绍了centos+php+coreseek+sphinx+mysql之一coreseek安装篇的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下
目录说明: csft-x.y.z:coreseek源代码 mmseg-i.j.k:mmseg源代码 testpack:测试配置和数据包
Coreseek 4.1 参考手册,详细手册,网页文本
coreseek3.2版本(目前来说最稳定的coreseek版本)的权威中文手册,内部带配置和开发示例。
coreseek SPHINX 使用说明及详细介绍
Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和信息处理领域,适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/文献检索、信息检索、数据挖掘等...
基于sphinx的中文检索Sphinx如果需要对中文进行全文 检索,也得需要一些插件来补充。其中我知道的插件有 coreseek
coreseek被称为带有中文分词的sphinx,与 sphinx不同的是coreseek增加了一个带有中文分词的词库,本下载是coreseek-4.1-win32