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 }