• sphinx 安装 笔记


    系统版本:

    [root@localhost ~]# lsb_release  -a

    LSB Version: :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch

    Distributor ID: CentOS

    Description: CentOS release 5.5 (Final)

    Release: 5.5

    Codename: Final

     

    1.   下载 sphinx  

    [root@localhost ~]# cd  /usr/local/src

    wget http://www.sphinxsearch.com/downloads/sphinx-0.9.9.tar.gz -c 

    wget  http://cdn.mysql.com/Downloads/MySQL-5.1/mysql-5.1.66.tar.gz   -c

    解压:

    tar  zxvf  sphinx-0.9.9.tar.gz 

    tar zxvf  mysql-5.1.66.tar.gz 

    mkdir  /usr/local/src/mysql-5.1.66/storage/sphinx

    cp /usr/local/src/sphinx-0.9.9/mysqlse/*  /usr/local/src/mysql-5.1.66/storage/sphinx/

     

    进入MYSQL 编译安装MYSQL

    cd  mysql-5.1.66

    mkdir  /usr/local/mysql

    yum  -y  install   gcc gcc-c++    

    ./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-extra-charset=all --enable-thread-safe-client --enable-assembler --with-readline --with-big-tables --with-named-curses-libs=/usr/lib/libncursesw.so.5  --with-plugins=sphinx 

     

    出现错误:

    configure: error: unknown plugin: sphinx

     首先安装:

     yum  -y install  imake  automake  libtool

     

    然后  

     sh  BUILD/cleanup 

     sh  BUILD/autorun.sh 

     

    然后再编译:

     ./configure  -h

     

    底部出现:

       === Sphinx Storage Engine ===
      Plugin Name:      sphinx
      Description:      Sphinx Storage Engines
      Supports build:   static and dynamic
      Configurations:   max, max-no-ndb 

     

     

    然后重新编译MYSQL

      ./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-extra-charset=all --enable-thread-safe-client --enable-assembler --with-readline --with-big-tables --with-named-curses-libs=/usr/lib/libncursesw.so.5  --with-plugins=sphinx 

     

     

    make  &&  make install 

     

    [root@localhost mysql-5.1.66]# groupadd mysql  

    [root@localhost mysql-5.1.66]# useradd  -g mysql mysql

    [root@localhost mysql-5.1.66]# chown  -R root:mysql   /usr/local/mysql/

     

     /usr/local/mysql/bin/mysql_install_db   --user=mysql  --datadir=/usr/local/mysql/var

     

    [root@localhost mysql-5.1.66]# chown  -R mysql /usr/local/mysql/var

     

    [root@localhost mysql-5.1.66]# cp  support-files/mysql.server   /etc/init.d/

    [root@localhost mysql-5.1.66]# chmod  700  /etc/init.d/mysql.server 

    [root@localhost mysql-5.1.66]# cp support-files/my-medium.cnf  /etc/my.cnf

    [root@localhost mysql-5.1.66]# /etc/init.d/mysql.server  start

    shell> vi ~/.bash_profile
    修改PATH变量:
    PATH=$PATH:$HOME/bin:/usr/local/mysql/bin/
    让修改马上生效,可以执行如下命令:source ~/.bash_profile 

     

     

     

    第二天:

    [root@localhost mysql-5.1.66]# ldconfig   /usr/local/mysql/lib/mysql/

    [root@localhost mysql-5.1.66]# ldconfig   /usr/local/mysql/include/mysql

    [root@localhost mysql-5.1.66]# cd ..

    [root@localhost src]# ls 

    mysql-5.1.66  mysql-5.1.66.tar.gz  sphinx-0.9.9  sphinx-0.9.9.tar.gz

    [root@localhost src]# cd  sphinx-0.9.9

    [root@localhost sphinx-0.9.9]# mkdir /usr/local/sphinx

    [root@localhost sphinx-0.9.9]# ./configure  --prefix=/usr/local/sphinx/  --with-mysql=/usr/local/mysql

    [root@localhost sphinx-0.9.9]# make install

    [root@localhost sphinx-0.9.9]# cd /usr/local/sphinx/etc

    [root@localhost etc]# cp  sphinx.conf.dist  sphinx.conf

    [root@localhost etc]# vim sphinx.conf  对 sphinx 进行配置

    [root@localhost etc]# mysql -u mysql </usr/local/sphinx/etc/example.sql

    mysql> show databases;

     

     

     

    索引建立:

    /usr/local/sphinx/bin/indexer

          创建索引是报了一个这样的错误:/usr/local/sphinx/bin/indexer: error while loading shared libraries: libmysqlclient.so.16: cannot open shared object file: No such file or directory,主要原因是在上一篇中安装完mysql后没有设置环境变量,可以用下面方法解决:

    locate libmysqlclient    #运行该命令找到关于libmysqlclient.so.16的文件
    cp /usr/local/mysql/lib/mysql/libmysqlclient.so.16 /usr/lib/libmysqlclient.so.16    #然后把该文件的一个连接复制到在环境变量的文件夹/usr/lib/

     

     

    创建索引:

    /usr/local/sphinx/bin/indexer  --all

     

     

    测试:

    [root@localhost bin]# /usr/local/sphinx/bin/search test

     

    安装完成了!

     

     

    中文分词包:

    # cd /usr/local/src

    wget http://www.coreseek.cn/uploads/csft/3.2/coreseek-3.2.14.tar.gz  -c

    tar  zxvf  coreseek-3.2.14.tar.gz 

    cd  coreseek-3.2.14

    cd  mmseg-3.2.14

     ./configure  --prefix=/usr/local/mmseg

    报错:

     

    解决方法:

    aclocal
    libtoolize --force
    automake --add-missing
    autoconf
    autoheader
    make clean 

         然后再进行编译和安装:

    ./configure --prefix=/usr/local/mmseg
    make && make install

     

    把 mmseg 命令键入到环境变量中,然后运行 mmseg  

    [root@localhost mmseg-3.2.14]# ln -s /usr/local/mmseg/bin/mmseg /bin/mmseg

    [root@localhost mmseg-3.2.14]# mmseg

    Coreseek COS(tm) MM Segment 1.0

    Copyright By Coreseek.com All Right Reserved.

    Usage: mmseg <option> <file>

    -u <unidict>           Unigram Dictionary

    -r           Combine with -u, used a plain text build Unigram Dictionary, default Off

    -b <Synonyms>           Synonyms Dictionary

    -t <thesaurus>          Thesaurus Dictionary

    -h            print this help and exit

     

     

    安装完成

  • 相关阅读:
    Entity Framework
    SQLiteHelp
    NLog日志记录
    C# 特性(Attribute)
    C# 正则表达式
    C#中显现串口通信SerialPort类
    C#.NET编码规范
    AspNetCore 限流中间件IpRateLimitMiddleware 介绍
    .Net Core中的Api版本控制
    C# Task的使用
  • 原文地址:https://www.cnblogs.com/rhythmK/p/2736873.html
Copyright © 2020-2023  润新知