sphinx建立索引

#
# Minimal Sphinx configuration sample (clean, simple, functional)
#

source v9     //自定义的名字
{
    type                    = mysql               //类型
    sql_host                = localhost    //服务器
    sql_user                = root             //用户名
    sql_pass                = 123456     //密码
    sql_db                    = phpcms     //数据库
    sql_port                = 3306    # optional, default is 3306    //数据库的端口号
    sql_query_pre                = set names utf8     //设置字符集
    sql_query                = SELECT searchid,adddate,data from v9_search      //查询那个表
    sql_attr_uint            = searchid        //从sql中读出的值必须是整数
    sql_attr_timestamp        = adddate      //从sql中读出的值必须是整数,作为时间属性    

    sql_query_info_pre        = set names utf8     
    sql_query_info            = SELECT * FROM  v9_search WHERE searchid=$id    //从数据库中读取原始数据
}


index v9
{
    source                    = v9      //对应source v9的名称
        charset_dictpath            =  /usr/local/mmseg/etc/         //#BSD、Linux环境下设置,/符号结尾
    path                    = /usr/local/coreseek/var/data/test1
    docinfo                    = extern
    charset_type            = zh_cn.utf-8
}

//全局index定义
indexer
{
    mem_limit                = 32M       //设置内存大小
}

//searchd服务定义
searchd
{
    port                    = 9312        //端口号
    log                        = /usr/local/coreseek/var/log/searchd.log      //日志
    query_log                = /usr/local/coreseek/var/log/query.log       //查询日志
    read_timeout            = 5        //请求超时
    max_children            = 30     //同时可执行的最大searchd 进程数
    pid_file                = /usr/local/coreseek/var/log/searchd.pid       进程ID文件
    max_matches                = 1000      // 查询结果的最大返回数
    seamless_rotate            = 1          //是否支持无缝切换,做增量索引时通常需要(0/1)
    preopen_indexes            = 0
    unlink_old                = 1

}

bin/searchd -c etc/csft_v9.conf &    开启sphinx
pkill -9 searchd            关闭sphinx

//引入类文件

require ( "sphinxapi.php" );
//实例类
$cl = new SphinxClient ();

//连接服务器
$cl->SetServer ( '192.168.1.250', 9312);

//超时时间3秒,3秒连不上放弃 

$cl->SetConnectTimeout ( 3 ); 

//是以数组形式返回结果。 

$cl->SetArrayResult ( true );

//设置全文查询的匹配模式 

$cl->SetMatchMode ( SPH_MATCH_ANY);

SPH_MATCH_ALL           匹配所有查询词(默认模式).

SPH_MATCH_ANY           匹配查询词中的任意一个. 

SPH_MATCH_PHRASE    将整个查询看作一个词组,要求按顺序完整匹配. 

SPH_MATCH_BOOLEAN   将查询看作一个布尔表达式. 

SPH_MATCH_EXTENDED  将查询看作一个Sphinx内部查询语言的表达式. 

SPH_MATCH_FULLSCAN  使用完全扫描,忽略查询词汇. 

SPH_MATCH_EXTENDED2     类似 SPH_MATCH_EXTENDED ,并支持评分和权重. 

根据关键词搜索 

$res = $cl->Query ( '北京', "*" ); 



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值