一.    创建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 配置文件说明的更多相关文章

  1. sphinx配置文件sphinx.conf参数详细说明

    sphinx配置文件sphinx.conf参数详细说明 sphinx.conf各个参数详细说明 # # Sphinx configuration file sample # # WARNING! Wh ...

  2. sphinx 配置文件全解析

    sphinx的配置文件是在配置的时候最容易出错的了: 我们先要明白几个概念: source:数据源,数据是从什么地方来的. index:索引,当有数据源之后,从数据源处构建索引.索引实际上就是相当于一 ...

  3. sphinx配置文件详解

    sphinx的配置文件是在配置的时候最容易出错的了: 我们先要明白几个概念: source:数据源,数据是从什么地方来的. index:索引,当有数据源之后,从数据源处构建索引.索引实际上就是相当于一 ...

  4. sphinx 配置文件全解析(转)

    sphinx的配置文件是在配置的时候最容易出错的了: 我们先要明白几个概念: source:数据源,数据是从什么地方来的. index:索引,当有数据源之后,从数据源处构建索引.索引实际上就是相当于一 ...

  5. Sphinx 配置文件的说明【备忘】

    ## 数据源src1 source src1 { ## 说明数据源的类型.数据源的类型可以是:mysql,pgsql,mssql,xmlpipe,odbc,python ## 有人会奇怪,python ...

  6. sphinx配置文件继承

    # # Minimal Sphinx configuration sample (clean, simple, functional) # source mysql { type = mysql #数 ...

  7. Sphinx安装配置应用

    Sphinx 是由俄罗斯人Andrew Aksyonoff开发的一个全文搜索引擎.意图为其他应用提供高速.地空间占用.高结果相关度的全文搜索功能.Sphinx可以非常容易的与SQL数据库和脚本语言集成 ...

  8. Sphinx 2.2.6 window下安装全过程 未完 持续标记~~~~

    由于在win8.1下安装 选的这个版本 Win64 binaries w/MySQL+PgSQL+libstemmer+id64 support 2.2.6-release 7.3M 下载页面 htt ...

  9. Sphinx中文分词安装配置及API调用

    这几天项目中需要重新做一个关于商品的全文搜索功能,于是想到了用Sphinx,因为需要中文分词,所以选择了Sphinx for chinese,当然你也可以选择coreseek,建议这两个中选择一个,暂 ...

  10. windows下安装 sphinx 数据库全文搜索引擎

    此次演示的环境是:win7系统,64位,php5.4.x,apache sphinx,斯芬克斯(英语不好的同学可以直接读这个音),意狮身人面像 特点:创建索引速度快,3分钟左右能创建100万条记录的索 ...

随机推荐

  1. heimaJava17

    java IO流 缓冲流 概念 缓存流也称为高效流.或者高级流.之前学习的字节流也可以称为原始流 作用:缓冲流自带缓冲区.可以提高原始字节流.字符流读写数据的性能 分类 字节缓冲流 字节缓冲输入流:B ...

  2. Spring校验:@Validated和@Valid区别

    结论: Spring validation验证框架对入参实体进行嵌套验证必须在相应属性(字段)加上@Valid而不是@Validated Spring Validation验证框架对参数的验证机制提供 ...

  3. Linux配置NTP时间同步

    1.检查系统是否安装了NTP包(linux系统一般自带NTP4.2)没有安装我们直接使用yum命令在线安装:yum install ntp2.NTP服务端配置文件编辑vim /etc/ntp.conf ...

  4. awk sub string

    cat TFY1C.txt|awk '{print $0"\t"substr($4,1,4)}'> TFY1CRID.tx 1--从那位开始 4--多长

  5. 西电oj73题字符串处理

    问题描述 有一种简单的字符串压缩算法,对于字符串中连续出现的同一个英文字符,用该字符加上连续出现的次数来表示(连续出现次数小于3时不压缩).例如,字符串aaaaabbbabaaaaaaaaaaaaab ...

  6. 全新TI AM62xx系列核心板上市,小小身板蕴藏巨大势能!

    2011年TI推出AM335x,成为了此后市场上最受欢迎的通用工业级ARM处理器,并广泛应用于工业HMI, 医疗电子,机器人,能源,汽车等领域.随着工业4.0的发展,HMI人机交互.工业工控.医疗等领 ...

  7. C# 微信开发 微信号接入 (附完整源码)(1)

    1. 首先配置微信服务器设置 a)        企业号配置信息 (详见:ConfigurationManager类) b)        企业号服务器配置: ConfigurationManager ...

  8. File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent

    IDEA编译报以下错误 File encoding has not been set, using platform encoding UTF-8, i.e. build is platform de ...

  9. Keepalived+HAProxy基于ACL实现单IP多域名负载功能

    编译安装 HAProxy 新版 LTS 版本,编译安装 Keepalived 开启HAProxy多线程,线程数与CPU核心数保持一致,并绑定CPU核心 因业务较多避免配置文件误操作,需要按每业务一个配 ...

  10. Linux 用户密码不能设置问题

    当我们有时候要更改linux账户密码时,有时候会遇到下面这种情况: Password has been already used. Choose another.passwd: Have exhaus ...