Sphinx 配置文件说明
一. 创建sphinx.conf文件
其结构组成主要如下:
Source 源名称1{ //指定数据源
一些配置
}
Index 索引名称1{
Source=源名称1
}
Source 源名称2{
一些配置
}
Index 索引名称2{
Source=源名称2
}
Indexer{
mem_limit = 32M
}
Searchd{ //配置 searchd 守护程序本身
}
二. Source 源名称 相关配置说明
Type=数据库类型(Mysql 或SQL);
Sql_host= 数据库主机地址(如果是外网,请确保防火墙允许链接)
Sql_user= 数据库用户名
Sql_pass= 数据库密码
Sql_db= 数据库名称
Sql_port= 数据库端口
Sql_query_pre= 执行SQL前设置的编码 (SET NAMES UTF8)
Sql_query= 全文检索要显示的内容,据官方说法:尽可能不要使用WHERE或GROUPBY ,将其交给SPHINX效率会更高;select 出来的字段必须包含至少一个唯一主键,以及全文检索的字段 sphinx 会对SELECT 中的 字段1 ,字段2 建立sphinx自己的索引 及 在查询的字段中查找关键字
Sql_query_info=SELECT * FROM Inventory WHERE id=$id 来查找匹配记录 在查询中,$id被替换为 searchd 返回的每个主键 (调试是使用 建议注释此项)
Strip_html= 0/1 是否去掉HTML标签
Sql_attr_uint= 无符号整数属性,可以设置多个,设置数据库字段,设置哪个能显示出哪个字段数据的整形来.
三. Index中配置说明
Source= 数据源名称
Path = 索引记录存放目录,注:d:/sphinx/data/cg 这个的意思是 在data目录下创建一个名为cg的文件
min_word_len= 索引的词的最小长度 设为1 既可以搜索单个字节搜索,越小 索引越精确,但建立索引花费的时间越长
charset_type= utf-8/gbk 设置数据编码
charset_table= 字符表和大小写转换规则 .频繁应用于sphinx的分词过程
min_prefix_len = 最小前缀(0)
min_infix_len = 最小中缀(1)
ngram_len = 对于非字母型数据的长度切割(默认已字符和数字切割,设置1为按没个字母切割)
四. searchd配置说明
port= sphinx的端口(9312 与 searchd.exe监听结果一致)
log= 服务进程日志存放路径,一旦sphinx出现异常,基本上可以从这里查询有效信息
query_log= 客户端查询日志 尤为有用 它将在运行时显示每次搜索并显示结果
read_timeout= 请求超时(5)
max_children= 同时可执行的最大searchd 进程数(30)
pid_file= 进程ID文件
max_matches= 查询结果的最大返回数
seamless_rotate= 是否支持无缝切换,做增量索引时通常需要(0/1)
# 在启动运行时是否提前加载所有索引文件
preopen_indexes = 0
# 是否释放旧的索引文件
unlink_old = 1
# MVA跟新池大小(默认为1M)
mva_updates_pool = 1M
# 最大允许的网络包大小(默认8M)
max_packet_size = 8M
# 每个查询最大允许的过滤器数量(默认256)
max_filters = 256
#每个过滤器最大允许的值的个数(默认4096)
max_filter_values = 4096
# 每个组的最大查询数(默认为32)
max_batch_queries = 32
至此 spninx.conf 配置文件结束;注意:如果有换行 必须用反斜杠 \ 链接
五. sphinx建立所以 及监听
切换到 DOS sphinx/bin 目录下
1. 建立索引
Indexer –c sphinx.conf 索引名称/–all (–all参数是建立所有索引)
完成后提示如下:
total 535600 docs, 10707632 bytes
total 34.323 sec, 311958 bytes/sec, 15604.27 docs/sec
total 5 reads, 0.282 sec, 45592.6 kb/call avg, 56.4 msec/call avg
total 547 writes, 12.172 sec, 1017.0 kb/call avg, 22.2 msec/call avg
2. 建立完成后
可以执行 search [–c] sphinx.conf 搜索内容 (-c参数:是否允许模糊搜索)
3. 监听端口
Searchd
运行后 提示
listening on all interfaces, port=9312
accepting connections
监听成功后 既可以运行PHP程序 进行 搜索
PHPCODE:
require(“sphinxapi.php”); //加载类文件
$cl=new SphinxClient(); //实例化类
$cl->SetServer(‘localhost’,9312); //设置服务
$cl->SetArrayResult(true); //设置 显示结果集方式
$cl->SetLimits(0,10); //同 sql语句中的LIMIT
$cl->SetSortMode(“mode”); //排序模式 SPH_SORT_ATTR_DESC和SPH_SORT_ATTR_ASC
$result=$cl->Query(‘ff’,[索引名称可选]); //执行搜索
Var_dump($result); //输出
注意:每次修改sphinx.conf后要重建索引.
Sphinx 配置文件说明的更多相关文章
- sphinx配置文件sphinx.conf参数详细说明
sphinx配置文件sphinx.conf参数详细说明 sphinx.conf各个参数详细说明 # # Sphinx configuration file sample # # WARNING! Wh ...
- sphinx 配置文件全解析
sphinx的配置文件是在配置的时候最容易出错的了: 我们先要明白几个概念: source:数据源,数据是从什么地方来的. index:索引,当有数据源之后,从数据源处构建索引.索引实际上就是相当于一 ...
- sphinx配置文件详解
sphinx的配置文件是在配置的时候最容易出错的了: 我们先要明白几个概念: source:数据源,数据是从什么地方来的. index:索引,当有数据源之后,从数据源处构建索引.索引实际上就是相当于一 ...
- sphinx 配置文件全解析(转)
sphinx的配置文件是在配置的时候最容易出错的了: 我们先要明白几个概念: source:数据源,数据是从什么地方来的. index:索引,当有数据源之后,从数据源处构建索引.索引实际上就是相当于一 ...
- Sphinx 配置文件的说明【备忘】
## 数据源src1 source src1 { ## 说明数据源的类型.数据源的类型可以是:mysql,pgsql,mssql,xmlpipe,odbc,python ## 有人会奇怪,python ...
- sphinx配置文件继承
# # Minimal Sphinx configuration sample (clean, simple, functional) # source mysql { type = mysql #数 ...
- Sphinx安装配置应用
Sphinx 是由俄罗斯人Andrew Aksyonoff开发的一个全文搜索引擎.意图为其他应用提供高速.地空间占用.高结果相关度的全文搜索功能.Sphinx可以非常容易的与SQL数据库和脚本语言集成 ...
- Sphinx 2.2.6 window下安装全过程 未完 持续标记~~~~
由于在win8.1下安装 选的这个版本 Win64 binaries w/MySQL+PgSQL+libstemmer+id64 support 2.2.6-release 7.3M 下载页面 htt ...
- Sphinx中文分词安装配置及API调用
这几天项目中需要重新做一个关于商品的全文搜索功能,于是想到了用Sphinx,因为需要中文分词,所以选择了Sphinx for chinese,当然你也可以选择coreseek,建议这两个中选择一个,暂 ...
- windows下安装 sphinx 数据库全文搜索引擎
此次演示的环境是:win7系统,64位,php5.4.x,apache sphinx,斯芬克斯(英语不好的同学可以直接读这个音),意狮身人面像 特点:创建索引速度快,3分钟左右能创建100万条记录的索 ...
随机推荐
- Ubuntu常用环境配置
gcc sudo apt-get install build-essential update-alternatives 管理python环境 # 添加版本 # update-alternatives ...
- 4、jmeter的断言技术
断言:从反馈的结果来个需求匹配,是不是想要的内容 注:断言必要的时候才用 用过了会影响速度 1.操作步骤: 去选择自己想要响应的文本或者代码或者信息等等..... 2.断言相应大小的字节 3.断言响 ...
- idea乱码
第一步:修改intellij idea配置文件: 找到intellij idea安装目录,bin文件夹下面idea64.exe.vmoptions和idea.exe.vmoptions这两个文件,分别 ...
- windows系统错误代码
0 操作成功完成. 1 功能错误. 2 系统找不到指定的文件. 3 系统找不到指定的路径. 4 系统无法打开文件. 5 拒绝访问. 6 句柄无效. 7 存储控制块被损坏. ...
- MYSQL5.7实现递归查询
根据父id查出所有子级,包括子级的子级,包括自身的id sys_tenant_company_relation为关联表, company_id为子id,parent_company_id为父id SE ...
- keshe第三周
本周尝试在openeuler中运行java代码 实现bc库和crypto.gmsm 如下: 实现gmlib C语言库
- Hash中的bucket什么意思?
这个好理解.无序容器的内部是由一个个的bucket(桶)构成的,每个bucket里面由相同hash的元素构成. 因此无序容器的搜索是先根据hash值,定位到bucket,然后再在bucket里面搜索符 ...
- JS判断数据类型的4种方法
4种判断方法分别是: typeof instanceof prototype属性 constructor属性 可判断的类型对比如下图: 实践代码如下: 1 // 构造函数名方法 2 function ...
- HTTPS、HTTP/2前端入门篇
随着网络安全重要性日益凸显,越来越多的站点已经全站切换到HTTPS,其中很多HTTPS站点同时将HTTP协议升级到了HTTP/2.作为一只前端,最近一直在学习和应用相关知识点,便总结梳理如下. 一.何 ...
- windows下配置JDK教程
1.思路: 首先要确定所要用的应用可以兼容哪个版本jdk,然后开始下载对应的版本,最后安装,配置环境变量,测试,部署完成. 2.jdk下载地址: 如果下载全新的jdk可以直接百度jdk官网下载 如果需 ...