当前位置:首页 > PHP教程 >

Windows环境下Sphinx的安装

发布时间:2020-02-20 16:46:32 作者:佚名 阅读:(143)

 最近在做一个项目,由于数据量比较大查询很慢,于是想到了sphinx分词搜索,接下来吾爱编程为大家介绍一下在windows安装sphinx,有需要的小伙伴可以参考一下:

1、下载sphinx安装包:

http://sphinxsearch.com/downloads/current/

根据自己的需求下载对应的windows版本

QQ截图20200220162825.jpg

2、解压文件并在解压的根目录下新建data和log目录:

data目录用于存储生成的索引文件,log目录存放日志文件

3、在bin目录下新建sphinx.conf文件:

sphinx.conf:是sphinx的配置文件,配置信息可参考下面内容,也可自行搜索,把MySQL信息配置及相应的路径配置成自己的即可。
	source doc
	{
	    type           = mysql
	    sql_host        = localhost
	    sql_user        = root
	    sql_pass        = 123456
	    sql_db          = wmxiazai
	    sql_port        = 3306
	    sql_query_pre        = SET NAMES utf8
	    sql_query        = SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content FROM documents
	    sql_attr_uint      = group_id
	    sql_attr_timestamp    = date_added
	}
	index testindex
	{
	    source          = doc
	    path           = D:/sphinx/data/testindex
	    mlock         = 0
	    min_word_len  = 2
	    min_prefix_len = 0
	    min_infix_len = 1
	    ngram_len     = 1
	    ngram_chars = U+4E00..U+9FBB, U+3400..U+4DB5, U+20000..U+2A6D6, U+FA0E, U+FA0F, U+FA11, U+FA13, U+FA14, U+FA1F, U+FA21, U+FA23, U+FA24, U+FA27, U+FA28, U+FA29, U+3105..U+312C, U+31A0..U+31B7, U+3041, U+3043, U+3045, U+3047, U+3049, U+304B, U+304D, U+304F, U+3051, U+3053, U+3055, U+3057, U+3059, U+305B, U+305D, U+305F, U+3061, U+3063, U+3066, U+3068, U+306A..U+306F, U+3072, U+3075, U+3078, U+307B, U+307E..U+3083, U+3085, U+3087, U+3089..U+308E, U+3090..U+3093, U+30A1, U+30A3, U+30A5, U+30A7, U+30A9, U+30AD, U+30AF, U+30B3, U+30B5, U+30BB, U+30BD, U+30BF, U+30C1, U+30C3, U+30C4, U+30C6, U+30CA, U+30CB, U+30CD, U+30CE, U+30DE, U+30DF, U+30E1, U+30E2, U+30E3, U+30E5, U+30E7, U+30EE, U+30F0..U+30F3, U+30F5, U+30F6, U+31F0, U+31F1, U+31F2, U+31F3, U+31F4, U+31F5, U+31F6, U+31F7, U+31F8, U+31F9, U+31FA, U+31FB, U+31FC, U+31FD, U+31FE, U+31FF, U+AC00..U+D7A3, U+1100..U+1159, U+1161..U+11A2, U+11A8..U+11F9, U+A000..U+A48C, U+A492..U+A4C6 
	}
	indexer
	{
	    mem_limit       = 128M
	}
	searchd
	{
	    listen        = 9312
	    listen        = 9306:mysql41
	    log         = D:/sphinx/log/searchd.log
	    query_log      = D:/sphinx/log/query.log
	    read_timeout     = 5
	    max_children     = 30
	    pid_file       = D:/sphinx/log/searchd.pid
	    seamless_rotate   = 1
	    preopen_indexes   = 1
	    unlink_old      = 1
	    workers       = threads # for RT to work
	    binlog_path     = D:/sphinx/data
	}

4、索引文件生成:

在cmd命令行直接执行indexer.exe这个文件,后面是配置文件里面的索引名称。成功后会在data目录下生成文件

5、启动search服务:

6、测试sphinx是否可以正常:

<?php
    require ( "sphinxapi.php" );
    $cl = new SphinxClient ();
    $q = "王者荣耀"; //模拟关键字
    $sql = "";
    $host = "127.0.0.1";
    $port = 9312;
    $index = "*";
    $cl->SetServer ( $host, $port );
    $cl->SetConnectTimeout(10);
    $cl->SetArrayResult(true);
    
    $res = $cl->Query ( $q, $index );
    return print_r($res['matches']);

以上就是吾爱编程为大家介绍的windows安装sphinx的方法,了解更多相关文章请关注吾爱编程网!

欢迎分享转载→ Windows环境下Sphinx的安装

© 2015-2021 - 吾爱编程网 版权所有 苏ICP备18033726号-1关于我们 - 网站声明 - 联系我们