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,才能被合并生成;否则会被过滤掉,移出主索引。
过滤器可以多个,并且全部满足时才能在最终合并的索引出现
分享到:
相关推荐
9. **实时更新**:CoreSeek具有实时索引能力,这意味着数据表更新后,搜索结果能迅速反映这些变化,无需重建整个索引。 10. **错误排查与维护**:在使用过程中可能会遇到各种问题,如索引失败、搜索异常等。此时,...
用户在解压后,需要按照一定的步骤进行安装和配置,以启动和使用Coreseek服务。 安装过程通常涉及以下步骤: 1. 解压下载的压缩包到一个适当的目录。 2. 安装依赖项,如:MySQL Server(用于存储索引数据)、PHP...
安装和配置CoreSeek41-Windows涉及以下几个步骤: 1. 下载并解压coreseek41-windows.zip压缩包。 2. 安装必要的依赖,如Visual C++ Redistributable for Visual Studio 2015。 3. 配置sphinx.conf文件,设定数据源...
在Windows环境下安装CoreSeek4.1时,我们需要了解几个关键组件:搜索守护进程(searchd)和构建索引工具(indexer)。searchd负责处理客户端的搜索请求,管理索引,并提供实时搜索服务。indexer则是用于创建和更新...
3. `csft_rtsinykk.conf`和`csft_mysql.conf`可能分别是实时索引和MySQL数据源的配置文件,它们定义了如何与数据库交互,以及如何处理实时更新的索引。 **创建和更新索引**: 1. 使用`sphinxindexer`工具创建或更新...
此外,理解并掌握CoreSeek的配置参数和命令行工具是至关重要的,这能帮助你优化搜索性能,比如调整索引的存储方式、索引更新策略等。 总的来说,"coreseek-3.2.14-win32"为Windows用户提供了强大的中文全文检索解决...
6. **实时更新**:CoreSeek支持实时索引更新,这意味着当数据库中的数据发生变化时,无需重建整个索引,只需对新数据进行增量更新,保持搜索结果的时效性。 7. **排序和过滤**:在搜索结果返回时,CoreSeek允许用户...
4. **实时更新**: CoreSeek支持实时索引更新,这意味着数据一旦发生变化,搜索结果会立即反映这些变化,确保信息的时效性。 5. **API接口**: CoreSeek 提供了多种编程语言的API接口,如PHP、Python、Java等,方便...
`csft_setup_2.5.2.exe`是Coreseek 全文搜索服务器2.5的安装程序,用户可以通过该程序在Windows系统上进行安装。安装过程中需要注意以下几点: - **系统要求**:确保操作系统版本兼容,通常要求Windows Server或较高...
总的来说,Sphinx/Coreseek权威手册中文版是一本详尽的指南,涵盖了从安装、配置到开发和优化的全过程,是理解和使用Sphinx/Coreseek进行全文检索的宝贵资源。无论你是初学者还是经验丰富的开发者,都能从中受益匪浅...
Sphinx的安装过程涉及多个方面,包括选择支持的操作系统、安装必要的工具、配置环境变量、以及如何在不同的操作系统(如Linux、BSD、Windows)上安装。安装过程中可能会遇到一些问题,文档中也提供了一些已知问题的...
在本案例中,我们讨论的是CoreSeek的4.1版本,特别针对Windows 32位系统的安装包。 CoreSeek的核心组件包括MMseg分词器和Sphinx搜索引擎。MMseg(Maximum Matching Segmentation)是一种高效的中文分词算法,能够...
虽然描述中提到不再详述具体使用方法,但一般来说,安装和配置CoreSeek涉及以下几个步骤: 1. 解压并安装CoreSeek服务器。 2. 配置CoreSeek与MySQL的连接。 3. 安装和配置分词插件。 4. 创建索引,将需要搜索的数据...
在Windows环境下搭建Sphinx 2.2.11与CoreSeek 3.1搜索引擎系统是一项技术性较强的任务,尤其对于初次接触全文检索引擎的人来说。本文将详细介绍这两个组件的安装过程,以及如何进行简单的PHP集成与调试。 Sphinx是...
Sphinx CoreSeek 4.1 是一款针对中文的全文搜索引擎,专为Windows 32位系统设计的最新版本。这个工具提供了高效、精准的搜索功能,适用于网站、数据库和其他需要快速检索大量文本信息的场景。它结合了Sphinx搜索引擎...
通过以上步骤,我们不仅了解了Sphinx和Coreseek的强大功能,还学会了如何在Windows和Linux环境下安装、配置并使用这些工具。无论是对于提高网站的搜索性能还是对于构建高效的数据检索系统来说,掌握这些技术都是非常...