centos7安装配置coreseek(sphinx)

  1. 安装依赖:
    yum  -y  install  make  gcc  gcc-c++  libtool  autoconf  automake  imake  mariadb  mariadb-server  mariadb-devel libxml2-devel expat-devel
  2. 下载软件包:
    a. 克隆:
    git  clone  https://github.com/dollarphper/soft.git

    b. 进入目录:

    cd  soft
  3. 解压缩:
    tar  -xzf  coreseek-4.1-beta.tar.gz
  4. 安装mmseg:
    a. 进入目录:
    cd  coreseek-4.1-beta/mmseg-3.2.14/

    b. 安装:

    ./bootstrap
    ./configure --prefix=/usr/local/mmseg3
    make && make install
  5. 安装coreseek:
    a. 进入目录:
    cd  ../csft-4.1

    b. 修改配置文件:
    vim configure.ac

    将
    AM_INIT_AUTOMAKE([-Wall -Werror foreign])
    修改为
    AM_INIT_AUTOMAKE([-Wall foreign])

    c. 打补丁:

    patch  -p1  <  /home/lee/sphinx/sphinxexpr.cpp-csft-4.1-beta.patch
    输入:
    /home/lee/sphinx/coreseek-4.1-beta/csft-4.1/src/sphinxexpr.cpp

    centos7安装配置coreseek(sphinx)
    d. 安装:

    sh  buildconf.sh
    ./configure  --prefix=/usr/local/coreseek  --without-unixodbc  --with-mmseg  --with-mmseg-includes=/usr/local/mmseg3/include/mmseg/  --with-mmseg-libs=/usr/local/mmseg3/lib/  --with-mysql
    make  &&  make install
  6. 测试:
    a. 进入测试目录:
    cd  ../testpack/

    b. 查看测试文件:

    cat  var/test/test.xml

    centos7安装配置coreseek(sphinx)
    c. 测试中文分词:

    /usr/local/mmseg3/bin/mmseg  -d  /usr/local/mmseg3/etc var/test/test.xml

    centos7安装配置coreseek(sphinx)
    d. 创建索引:

    /usr/local/coreseek/bin/indexer  -c  etc/csft.conf  --all

    centos7安装配置coreseek(sphinx)
    e. 搜索测试:

    /usr/local/coreseek/bin/search  -c  etc/csft.conf  李彦宏

    centos7安装配置coreseek(sphinx)

  7. php连接sphinx:
    a. 安装扩展:
    a-1. 进入目录:
    cd  ../csft-4.1/api/libsphinxclient/

    a-2. 编译:

    扫描二维码关注公众号,回复: 985356 查看本文章
    ./configure  --prefix=/usr/local/sphinxclient
    make  &&  make install

    a-3. 回到软件包目录:

    cd  ../../../../

    a-4. 解压:

    tar  -xzf  sphinx-1.3.0.tgz

    a-5. 安装php-devel:

    yum  -y  install  php-devel

    a-6. 进入目录:

    cd  sphinx-1.3.0

    a-7. 安装:

    phpize
    ./configure --with-php-config=/usr/bin/php-config --with-sphinx=/usr/local/sphinxclient
    make && make install

    a-8. 开启php-sphinx扩展:
    vim /etc/php.ini

    在末尾加上:
    [sphinx]
    extension=sphinx.so

    b. 测试:
    b-1. 添加测试数据:

    mysql  -uroot  -p123456  <  /usr/local/coreseek/etc/example.sql

    b-2. 复制配置文件:

    cp  /usr/local/coreseek/etc/sphinx.conf.dist  /usr/local/coreseek/etc/csft.conf

    b-3. 修改配置文件:
    vim /usr/local/coreseek/etc/csft.conf

    source src1
    {
    type            = mysql
    sql_host        = localhost
    sql_user        = root
    sql_pass        = 123456
    sql_db          = test
    sql_port        = 3306  # optional, default is 3306
    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
    sql_ranged_throttle = 0
    sql_query_info      = SELECT * FROM documents WHERE id=$id
    }
    source src1throttled : src1
    {
    sql_ranged_throttle = 100
    }
    index test1
    {
    source          = src1
    path            = /usr/local/coreseek/var/data/test1
    docinfo         = extern
    mlock           = 0
    morphology      = none
    min_word_len        = 1
    charset_type        = sbcs
    html_strip      = 0
    }
    indexer
    {
    mem_limit       = 32M
    }
    searchd
    {
    listen          = 9312
    listen          = 9306:mysql41
    log         = /usr/local/coreseek/var/log/searchd.log
    query_log       = /usr/local/coreseek/var/log/query.log
    read_timeout        = 5
    client_timeout      = 300
    max_children        = 30
    pid_file        = /usr/local/coreseek/var/log/searchd.pid
    max_matches     = 1000
    seamless_rotate     = 1
    preopen_indexes     = 1
    unlink_old      = 1
    mva_updates_pool    = 1M
    max_packet_size     = 8M
    max_filters     = 256
    max_filter_values   = 4096
    max_batch_queries   = 32
    workers         = threads # for RT to work
    }

    b-4. :复制二进制文件:

    cp  /usr/local/coreseek/bin/*  /usr/bin/

    b-5. 生成索引:

    indexer  --rotate  --all

    b-6. 启动服务:

    searchd

    b-7. 停止服务:

    searchd  --stop

猜你喜欢

转载自blog.51cto.com/12173069/2119290