官方文档有很多疏漏,故此多方尝试,将正确的贴出来:
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 etccsft_mysql.conf mysql
3、启动searchd进程
bin/searchd --config etccsft_mysql.conf –-pidfile
注解:–pidfile这个选项一定要添加,强制生成pid,不然在合并索引时会报pid文件无法打开错误(这项非常重要)
4、生成增量索引
bin/indexer –-config etccsft_mysql.conf delta -–rotate
5、主索引和增量索引合并
bin/indexer –-config etccsft_mysql.conf -–merge mysql delta -–rotate
在searchd进程运行时–-rotate选项一定要添加,详见文档
如果要在合并,将某些文档移出索引时,需要:
bin/indexer –-config etccsft_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很用
从官网上拷贝的内容,然后转的pdf;自己看的时候加了部分标签
coreseek编译安装的错误处理 操作实例 和实时索引 亲自测试 无误
coreseek在windows和linux下的使用.docx
sphinx mmseg coreseek 搜狗 词库
coreseek SPHINX 使用说明及详细介绍
sphinx coreseek 停止词 常用一些的停用词,避免大数据索引
Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和信息处理领域,适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/文献检索、信息检索、数据挖掘等...
sphinx-coreseek中文手册 sphinx-coreseek中文手册 sphinx-coreseek中文手册 sphinx-coreseek中文手册
sphinx coreseek 4.1 中文搜索引擎,最新Windows版本。
coreseek4.1 window版本,sphinx 中文检索搜索引擎!
Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和信息处理领域,适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/文献检索、信息检索、数据挖掘等...
sphinx中文分词
Coreseek的windows版本,因为官网打不开,因此上传此。 搭配Sphinx进行中文分词搜索
Sphinx 0.9.9/Coreseek 3.2 参考手册,完全离线版。
Sphinx 0.9.9/Coreseek 3.2 参考手册 离线版 Sphinx--强大的开源全文检索引擎,Coreseek--免费开源的中文全文检索引擎 在线地址: http://www.coreseek.cn/docs/coreseek_3.2-sphinx_0.9.9.html
coreseek3.2版本(目前来说最稳定的coreseek版本)的权威中文手册,内部带配置和开发示例。
NULL 博文链接:https://sinykk.iteye.com/blog/1154099
中文的sphinx coreseek,搜索引擎,搭配Sphinx进行中文分词搜索