coreseek for sphinx的使用

来源:互联网 发布:淘宝短款溥针织开衫 编辑:程序博客网 时间:2024/05/19 06:16

关注微信公众号:wwwcoder,现在已将博客搬到这里,内容精选过后才发布出来。谢谢大家支持


1.将下载下来的文件包解压,重新命名为sphinx或者其他。然后放到一个比较合适的位置,一般放到d盘根目录下面。

2.找到D:\sphinx\etc里面的csft_mysql.conf这个文件,打开它,推荐用ue或者editplus。因为记事本打开会没有样式。这是因为在linux下面的文件的缘故。

3.做必要的修改。因为这个修改因表不同和你想要取的内容不同,这里就没有标准的,只能给个实例我的修改是这样的:

#源定义source main{type= mysqlsql_host= 192.168.1.250sql_user= rootsql_pass= 123456sql_db= db_youxuesql_port= 3306sql_query_pre= SET NAMES utf8sql_query_pre                   = set SESSION query_cache_type = OFF #我加的sql_query_pre                   = replace into sph_counter select 1,max(Fid) from t_store   #我加的sql_query= SELECT Fid, Ftitle, Fcontent, Fprovince,Fexamtitle, UNIX_TIMESTAMP(Fcreatetime) AS Fcreatetime FROM t_store where Fid<=(select Fmaxid from sph_counter where Fid = 1)#sql_query第一列id需为整数#title、content作为字符串/文本字段,被全文索引sql_attr_uint= Fid#从SQL读取到的值必须为整数sql_attr_timestamp= Fcreatetime      #从SQL读取到的值必须为整数,作为时间属性sql_query_info= SELECT * FROM t_store WHERE Fid=$id  #命令行查询时,从数据库读取原始数据信息}#index定义index main{source= main             #对应的source名称path= var/data/mysqldocinfo= externmlock= 0morphology= nonemin_word_len= 1html_strip= 0#charset_dictpath = /usr/local/mmseg3/etc/#BSD、Linux环境下设置,/符号结尾charset_dictpath = etc/#Windows环境下设置,/符号结尾charset_type= zh_cn.utf-8}#全局index定义indexer{mem_limit= 128M}#searchd服务定义searchd{    listen                  =   9312read_timeout= 5max_children= 30max_matches= 1000seamless_rotate= 0preopen_indexes= 0unlink_old= 1pid_file = var/log/searchd_mysql.pidlog = var/log/searchd_mysql.logquery_log = var/log/query_mysql.log}source deltaMain: main{sql_query_pre = set names utf8sql_query = SELECT Fid, Ftitle, Fcontent, Fprovince,Fexamtitle, UNIX_TIMESTAMP(Fcreatetime) AS Fcreatetime FROM t_store where Fid>(select Fmaxid from sph_counter where Fid=1)}index deltaMain: main{source = deltaMainpath   = var/data/delta}
这样配置就可以了。

4.在命令行里面找到sphinx的目录。然后输入:

bin\indexer -c etc\csft_mysql.conf

回车,这个是生成新的索引。

5.再输入:

bin\indexer -c etc\csft_mysql.conf --all

回车,如果这里数据大的话会等待些时间。一般10000条20秒吧。反正没有官方说的快。再输入:

bin\searchd -c etc\csft_mysql.conf --console 回车启动searchd服务。这个时候可以在任务管理器的进程中找到这个searchd服务。这样就具备了查询的基本条件了。

6.输入:

bin\searchd -c etc\csft_mysql.conf -a document

回车,意思是搜索包含document的所有匹配项。

原创粉丝点击