sphinx配置文件继承

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


source mysql
{
    type          = mysql         #数据库类型

    #新服务器
    sql_host      = 192.168.0.0
    sql_user      = root
    sql_pass      = test
    sql_db        = test
    sql_port      = 3306

    sql_query_pre = SET NAMES utf8
    sql_query_pre = SET SESSION query_cache_type=OFF
}


##########   数据源统一放在一起  ########## 
source indexLocation:mysql{
    sql_query        = SELECT a.location_id as id,a.location_id,a.location_name as `location_name`,a.location_name as `name`,a.location_bname,a.attach_id,a.showstatus,a.is_del,a.status,b.area_name as city_name FROM `ts_rdd_location` a LEFT JOIN `ts_rdd_area` b ON a.city_id = b.area_id
    #sql_attr_string =  name
    sql_attr_uint        = status
    #sql_attr_timestamp    = date_added
    sql_query_info        = SELECT * FROM `ts_rdd_location`  WHERE location_id = $id
    
}

source indexNearby:mysql{
    sql_query        = SELECT a.product_id as id,a.product_id,a.product_name as `name`,a.product_name,a.num,a.num_sale,a.img,b.area_name as city_name FROM `ts_rdd_nearby_product` a LEFT JOIN `ts_rdd_area` b ON a.city_id = b.area_id
    #sql_attr_string =  name
    #sql_attr_uint        = status
    #sql_attr_timestamp    = date_added
    sql_query_info        = SELECT * FROM `ts_rdd_nearby_product`  WHERE product_id = $id
}

##########   索引定义统一放在一起  ########## 
index indexLocation
{
    source         = indexLocation                    #声明索引源
    path           = /usr/local/var/data/indexLocation    #索引文件存放路径及索引的文件名。不要和其它索引名重名。
    docinfo        = extern                  #文档信息存储方式
    mlock          = 0                       #缓存数据内存锁定
    morphology     = none                    #形态学(对中文无效)
    min_word_len   = 2                       #索引的词最小长度
    charset_type   = utf-8
    min_prefix_len = 0                       #最小前缀
    html_strip     = 1
    ngram_len      = 1                       #对于非字母型数据的长度切割
    ngram_chars    = U+3000..U+2FA1F         #则会对每个中文,英文字词进行分割,速度会慢

    #字符表,注意:如使用这种方式,则sphinx会对中文进行单字切分,即进行字索引。
    #若要使用中文分词,必须使用其他分词插件如 coreseek,sfc
    charset_table  = 0..9, A..Z->a..z, _, a..z, U+410..U+42F->U+430..U+44F, U+430..U+44F  
}

index indexNearby
{
    source         = indexNearby                #声明索引源
    path           = /usr/local/var/data/indexNearby    #索引文件存放路径及索引的文件名。不要和其它索引名重名。
    docinfo        = extern                  #文档信息存储方式
    mlock          = 0                       #缓存数据内存锁定
    morphology     = none                    #形态学(对中文无效)
    min_word_len   = 2                       #索引的词最小长度
    charset_type   = utf-8
    min_prefix_len = 0                       #最小前缀
    html_strip     = 1
    ngram_len      = 1                       #对于非字母型数据的长度切割
    ngram_chars    = U+3000..U+2FA1F         #则会对每个中文,英文字词进行分割,速度会慢

    #字符表,注意:如使用这种方式,则sphinx会对中文进行单字切分,即进行字索引。
    #若要使用中文分词,必须使用其他分词插件如 coreseek,sfc
    charset_table  = 0..9, A..Z->a..z, _, a..z, U+410..U+42F->U+430..U+44F, U+430..U+44F  
}

########## 索引器配置 ##########
indexer
{
    mem_limit = 128M   #内存限制
}


########## 索引器配置 ##########
searchd
{
    listen                 = 9312                         #监听端口,官方已在IANA获得正式授权的9312端口。以前版本默认的是3312。
    log                    = /usr/local/sphinx/var/log/searchd.log  #服务进程日志 ,一旦sphinx出现异常,基本上可以从这里查询有效信息
    query_log              = /usr/local/sphinx/var/log/query.log    #客户端查询日志,笔者注:若欲对一些关键词进行统计,可以分析此日志文件
    read_timeout           = 5                            #请求超时
    max_children           = 30                           #同时可执行的最大searchd 进程数
    pid_file               = /usr/local/sphinx/var/searchd.pid  #进程ID文
    max_matches            = 10000                         # 查询结果的最大返回数
    seamless_rotate        = 1                            # 是否支持无缝切换,做增量索引时通常需要
    workers                = threads                      # for RT to workbinlog_path 
    preopen_indexes        = 1
    unlink_old             = 1
    compat_sphinxql_magics = 0
}

 

posted @ 2013-11-18 11:52  幻星宇  阅读(578)  评论(0编辑  收藏  举报