zoukankan      html  css  js  c++  java
  • Shpinx在PHPCMS里的使用及配置

    现在可以用最新版的Sphinx版本

    网址:http://sphinxsearch.com/downloads/release/

    我使用rpm方式: 下载RHEL/CentOS 6.x x86_64 RPM(centos6的64位)

    安装前请确保您安装了这些软件包:

    $ yum install postgresql-libs unixODBC

    从Sphinx网站下载RedHat RPM并安装它:

    $ rpm -Uhv sphinx-2.2.1-1.rhel6.x86_64.rpm

    准备配置文件(参见快速浏览)后,

    可以启动searchd守护进程:

    $ service searchd start

    (注:我配置文件弄好后,使用这个命令无法启用,后使用

    searchd -c /etc/sphinx/sphinx.conf 成功启用

    searchd -c /etc/sphinx/sphinx.conf --stop 这是停止 )

    配置shpinx.conf 位置/etc/sphinxsearch/sphinx.conf,注意sql_query_info  已经过时,可以不用加
    修改mysql配置文件:linux服务器为my.cnf,在 [mysqld] 后面加入一行“ft_min_word_len=1”,然后重启Mysql。 
    show variables like 'ft_min_word_len'; 查看是否正确

    新的sphinx,不支持sql_query_info,charset_type设置了

    sql_attr_uint  = id 此句 对于此改为sid ,在查询是id as sid即可
    同时修改phpcms里面modulessearchindex.php第123行改为    $sids[] = $_v['attrs']['sid'];

    修改之后一定要重建索引!

    配置文件分析:
        source:数据源,数据是从什么地方来的。
        index:索引,当有数据源之后,从数据源处构建索引。索引实际上就是相当于一个字典检索。有了整本字典内容以后,才会有字典检索。
        searchd:提供搜索查询服务。它一般是以deamon的形式运行在后台的。
        indexer:构建索引的服务。当要重新构建索引的时候,就是调用indexer这个命令。
        attr:属性,属性是存在索引中的,它不进行全文索引,但是可以用于过滤和排序。

    . 生成全部索引
    sudo  /usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --all --rotate 实际命令
    /usr/bin/indexer --config /etc/sphinx.conf --all --rotate

    生成主索引
    /usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --rotate main

    生成增量索引
    /usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --rotate delta

    加入crontab -e root用户
    * 0-3 * * * /usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --rotate delta 
    * 6-23 * * * /usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --rotate delta 
    0 4 * * *  /usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --merge index_main index_delta --rotate 合并索引

    配置文件参考:

    看phpcms帮助文档

  • 相关阅读:
    打印机常识
    网络禁用和启用,及禁止软件软件访问网络
    局域网高级共享改写
    电脑桌面搬家
    电脑硬件的基本组装
    c#中Linq查询语句
    c#中Lamdba匿名函数查询语句
    C#中静态和非静态的区别
    c#中的面向对象
    Laravel 表单验证规则:required、present、filled 和 nullable
  • 原文地址:https://www.cnblogs.com/feng18/p/6624906.html
Copyright © 2011-2022 走看看