一、安装前提必备先安装工具

yum -y install make gcc g++ gcc-c++ libtool autoconf automake imake mysql-devel libxml2-devel expat-devel

二、安装sphinx

1、下载sphinx
cd /usr/local/src   (默认下载文件存放位置)
wget http://sphinxsearch.com/files/sphinx-2.1.1-beta.tar.gz

2、解压安装包
tar zxvf sphinx-2.1.1-beta.tar.gz

3、检查当前系统是否满足安装sphinx 和指定安装目录
cd sphinx-2.1.1-beta
./configure --prefix=/usr/local/sphinx

4、编译和安装sphinx
make            
make install

5、备份配置文件
cd /usr/local/sphinx/etc
cp sphinx.conf.dist sphinx.conf

6、修改配置文件

1)、导入sphinx准备的测试数据会导入test库和两张表(确保apache mysql服务已经打开)
mysql -uroot -p</usr/local/sphinx/etc/example.sql

2)、修改sphinx配置文件
vim /usr/local/sphinx/etc/sphinx.conf
在vim下搜索    /sql_host   (告诉sphinx mysql链接信息)
        sql_host                = localhost     //服务器名
        sql_user                = root          //数据库账户
        sql_pass                = qaz5788943    //数据库密码
        sql_db                  = test          //使用sphinx 库名
        sql_port                = 3306  # optional, default is 3306

在vim下搜索   /sql_query_pre

打开下面配置的注释
  sql_query_pre          = SET NAMES utf8

在vim下搜索 /exceptions.txt 注释下面配置
#       exceptions              = /data/exceptions.txt

7、创建测试索引文件
cd /usr/local/sphinx/bin
./indexer --all

8、测试sphinx全文索引 搜索‘this’单词
./search this 
     
此时要报以下错误
index 'test1': search error: query too complex, not enough stack (thread_stack=1201361K or higher required).
可修改配置文件
vim /usr/local/sphinx/etc/sphinx.conf

/_info   搜索_info找到

sql_query_info          = SELECT * FROM documents WHERE id=$id
把上面配置注释掉即可
#sql_query_info          = SELECT * FROM documents WHERE id=$id

关键步骤总结:
1、连接mysql         (修改配置文件)要确保字符集为utf-8
2、创建索引           /usr/local/sphinx/bin/indexer --all    
3、使用搜索this分词   /usr/local/sphinx/bin/search this

完成以上安装后只支持英文分词 不支持中文  中英文结合搜索 所以需要进行下面中文分词安装

三、安装coreseek中文分词 (其实就是一个sphinx+中文词库)

1、下载coreseek  
wget www.coreseek.cn/uploads/csft/3.2/coreseek-3.2.14.tar.gz(官方已失效)

新地址:wge vdisk.weibo.com/s/z-JIj1kq4Z81
或在window下手动下载再传到linux的/usr/local/src 文件夹中

2、解压文件
tar -zxvf coreseek-3.2.14.tar.gz

cd coreseek-3.2.14

认识下coreseek文件目录
ls 
csft-3.2.14     (就是sphinx)   
mmseg-3.2.14   (就是中文词库)

3、安装

(1)安装mmseg分词词典
  
   1)cd /usr/local/src/coreseek-3.2.14/mmseg-3.2.14
 
   2)测试系统是否满足安装
     ./bootstrap
   3)执行配置检测
     ./configure --prefix=/usr/local/mmseg3
   4)编译安装
   make && make install
   
   5)测试分词
   cd /usr/local/mmseg3/bin
   /usr/local/mmseg3/bin/mmseg -d /usr/local/mmseg3/etc/ /usr/local/src/coreseek-3.2.14/mmseg-3.2.14/src/t1.txt

(2)安装csft
   
  1)执行内置shell脚本测试是否满足安装
   cd /usr/local/src/coreseek-3.2.14/csft-3.2.14
   sh buildconf.sh
  
  2)执行配置检测
  ./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
  
  
  3)执行安装
  make && make install
  
  4)修改配置文件
    a、备份配置文件
    
    cd  /usr/local/coreseek/etc
    cp sphinx.conf.dist csft.conf
    
    
    b、准备测试数据
         //创建库
         create database mysphinx charset utf8; 
         //创建表
         create table sphinx_test(id int primary key auto_increment,title varchar(255),content text,catid smallint)charset utf8; 
         //准备数据
         insert into sphinx_test(title,content,catid)values('奥运会','广州获得2028年奥运举办资格',1);
         insert into sphinx_test(title,content,catid)values('奥运会','傅园慧获得里约奥运中国队代表',1);
        
    c、修改配置文件
    vim csft.conf
    
     在vim下搜索    /sql_host   (告诉sphinx mysql链接信息)
        sql_host                = localhost     //服务器名
        sql_user                = root          //数据库账户
        sql_pass                = qaz5788943    //数据库密码
        sql_db                  = test          //使用sphinx 库名
        sql_port                = 3306  # optional, default is 3306

在vim下搜索   /sql_query_pre
     
     打开下面配置的注释
     sql_query_pre          = SET NAMES utf8

在vim下搜索 /sql_query   找到下面内容在每行前面加#注释掉
      
     sql_query                              = \
     SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content \
                FROM documents
     
     在上面内容下面添加个人测试数据表
     SELECT id,title,content FROM sphinx_test

搜索/charset_type 修改成:
     charset_type            = zh_cn.utf-8
     在上面内容下面加上词典目录
     charset_dictpath        = /usr/local/mmseg3/etc/
    
     /_info   搜索_info找到
      sql_query_info          = SELECT * FROM documents WHERE id=$id
     修改成:
      sql_query_info          = SELECT * FROM sphinx_test WHERE id=$id

d、创建索引
       cd /usr/local/coreseek/bin
       ./indexer --all
     
     e、测试分词
       ./search 奥运
至此报错 /data/exptions.txt不存在   找到csft.conf 注释掉

csft.conf 中的库名要改成实际的库名(提示数据库的表不存在)

四、安装php拓展
   
  1、下载sphinx拓展
  cd /usr/local/src 
  wget http://pecl.php.net/get/sphinx-1.2.1.tgz
  2、解压
  tar -zxvf sphinx-1.3.1.tgz

3、安装libsphinxclient支持
  cd /var/install/coreseek-4.1-beta/csft-4.1/api/libsphinxclient/
  ./configure  --prefix=/usr/local/sphinx
  make && make install
  
 
  4、安装php拓展
  cd /usr/local/src/sphinx-1.2.0
   
  /usr/local/php/bin/phpize
  ./configure --with-php-config=/usr/local/php/bin/php-config --with-sphinx

make && make install

5、修改php.ini配置文件
     可以在phpinfo()函数 网页搜索Configuration找到php.ini文件存放位置
       vim php.ini

添加配置项
       extension="sphinx.so";                                                                                                             //拓展名
       extension="/usr/local/php/lib/php/extensions/no-debug-zts-20131226/sphinx.so";    //拓展文件存放位置

6、重启apache
     /usr/local/apache2/bin/apachectl restart

centos 下 sphinx安装和配置的更多相关文章

  1. CentOS 下 redis 安装与配置

    CentOS 下 redis 安装与配置   1.到官网上找到合适版本下载解压安装 [root@java src]# wget -c http://redis.googlecode.com/files ...

  2. Centos下 Nginx安装与配置

    网上找了好多资料.都很难找全,这里以这个目录为主,进行备注. Nginx是一款轻量级的网页服务器.反向代理服务器.相较于Apache.lighttpd具有占有内存少,稳定性高等优势.它最常的用途是提供 ...

  3. CentOS下Redis安装与配置

    本文详细介绍redis单机单实例安装与配置,服务及开机自启动.如有不对的地方,欢迎大家拍砖o(∩_∩)o (以下配置基于CentOS release 6.5 Final, redis版本3.0.2 [ ...

  4. centos下Nginx安装和配置多个域名的虚拟主机

    nginx安装步骤,源码编译安装(源码编译,可以自定制更多功能) openssl #user nobody; worker_processes ; #error_log logs/error.log; ...

  5. Centos下mahout安装与配置

    对于Mahout的安装与配置,须要一个前提.就是hadoop已经安装. 假设没有安装能够參考. http://blog.csdn.net/u012965373/article/details/4533 ...

  6. centos下dnsmasq安装与配置

    说明1.dnsmasq是一款小巧且方便地用于配置DNS服务器和DHCP服务器的工具,适用于小型网络,它提供了DNS解析功能和可选择的DHCP功能. 2.dnsmasq可以解决小范围的dns查询问题,如 ...

  7. centos下nginx安装和配置

    注:此文是根据前辈的博客和自己实际动手总结出来的,不喜勿喷 1.准备工作 Nginx的安装依赖于以下三个包,意思就是在安装Nginx之前首先必须安装一下的三个包,注意安装顺序如下: 1 SSL功能需要 ...

  8. centos下vsftpd安装与配置

    1.已经配置好可以上网了,所以即可通过yum install vsftpd安装啦.如果不能上网则可以通过dvd2.iso工具集rpm方式进行安装. 2.安装好后,默认本地可以通过匿名用户登录,但是其它 ...

  9. Linux之CentOS下vsftp安装及配置相关操作

    1.安装ftps——vsftpd: #yum install vsftpd 2.指定上传下载目录配置: 如:用户名:xxx,需指定目录:/xxx/xxx #useradd -d /xxx/xxx -s ...

随机推荐

  1. 《ucore lab3》实验报告

    资源 ucore在线实验指导书 我的ucore实验代码 练习1:给未被映射的地址映射上物理页 题目 完成do_pgfault(mm/vmm.c)函数,给未被映射的地址映射上物理页.设置访问权限的时候需 ...

  2. [转帖]商用数据库之死:Oracle 面临困境

    商用数据库之死:Oracle 面临困境 投递人 itwriter 发布于 2019-10-20 08:22 评论(1) 有238人阅读 原文链接 [收藏] « » https://news.cnblo ...

  3. [转帖]HBase详解(很全面)

    HBase详解(很全面) very long story 简单看了一遍 很多不明白的地方.. 2018-06-08 16:12:32 卢子墨 阅读数 34857更多 分类专栏: HBase   [转自 ...

  4. Spring+SpringMVC+Mybatis(SSM)框架集成搭建

    Spring+SpringMVC+Mybatis框架集成搭建教程 一.背景 最近有很多同学由于没有过SSM(Spring+SpringMvc+Mybatis , 以下简称SSM)框架的搭建的经历,所以 ...

  5. Oracle 11g xe版本---总结1

    一.创建用户和授予权限 1.1 环境: Oracle 11g xe 第三方图形客户端: PLSQL Windows 10 必须登录 HR 用户,下面的查询会使用到 HR 中的表. 1.2 SQL 语句 ...

  6. PPPoE中间人拦截以及校园网突破漫谈

    本文首发于PPPoE中间人拦截以及校园网突破漫谈,转载请注明出处. PPPoE中间人拦截以及校园网突破漫谈 校园生活快结束了,之前还有点未完成的想法,趁着这两天有兴趣搞搞. 此文面向大众是那种在校园内 ...

  7. Vue使用指南(一)

    Vue Vue:前台框架 渐进式JavaScript框架 渐进式:vue可以控制页面的一个局部,vue也可以控制整个页面,vue也能控制整个前端项目     -- 根据项目需求,来决定vue控制项目的 ...

  8. ArcGIS SOE开发异常之 ClassFactory cannot supply requested class

    最近SOE开发一个功能,辛辛苦苦写完, 异常: ClassFactory cannot supply requested class 辛苦解决: 百度一下,描述这个问题的帖子很多,不过内容基本一致.大 ...

  9. IO是否会一直占用CPU?(转)

    原文来自知乎:https://www.zhihu.com/question/27734728 这是一个很好的关于并发/并行系统的问题.简单回答就是:IO所需要的CPU资源非常少.大部分工作是分派给DM ...

  10. vs setup 自动下载依赖的framework配置

    1.项目->属性->签名->选中为ClickOnce清单签名->创建测试证书 2.项目->属性->安全性->启用ClickOnce安全设置 3.setup项目 ...