本例是在Linux下, 环境 CentOS6.5 + PHP5.6.8 + MySQL5.6.13 + Sphinx2.3.1-beta

官网下载对应环境的安装包, 按照官方文档指定步骤进行安装

  第一种方式是采用API调用, 我们可以使用PHP, Python, Perl, Ruby等编程语言的API函数进行查询, 这种方式不必重新编译MySQL, 模块间改动比较少, 相对灵活

  第二种需要重新编译MySQL, 将Sphinx以插件的方式编译到MySQL中去, 这种方式对程序改动比较少, 仅仅需要改动SQL语句即可, 但前提是你的MySQL版本必须在5.1以上

  Linux下源码安装:

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

    ./configure --prefix /usr/local/sphinx --with-mysql=/usr/local/mysql  --enable-id64

    make && make install

  安装完毕, 目录如下:

    bin: 可执行文件目录

      indexer 用来生成索引数据, 创建索引, 收集要被检索的数据

      searchd 后台进程, 使用 indexer 生成的数据做查询

    etc: 配置文件目录

    var: 索引等数据存放目录

配置, Sphinx默认使用 etc/sphinx.conf, 如果没有, 则拷贝sphinx.conf.dist一份到sphinx.conf:

#设置主数据源配置, 与增量数据源分开, 避免重复建立索引, 只为增量数据源建立索引即可
source src1
{
type = mysql #数据库类型
sql_host = localhost
sql_user = root
sql_pass =
sql_db = test
sql_port = # optional, default is
sql_sock = /tmp/mysqld.sock #如果是Linux下需要开启, 指定sock文件
sql_query_pre = SET NAMES utf8 #预执行语句
sql_query_pre = SET SESSION query_cache_type=OFF #关闭缓存
sql_query = \
SELECT id, title, content FROM post #获取数据的SQL语句 sql_query_info = SELECT * FROM post WHERE id=$id #必须要有 此处id与sql_query中的id键名相同 #sql_attr_uint = group_id #对排序字段进行注释 原自带表中的字段
#sql_attr_timestamp = date_added #对排序字段进行注释 原自带表中的字段 sql_ranged_throttle =
}
#src1主数据源的增量数据源, 继承主数据源
#source src1throttled : src1
#{
# sql_ranged_throttle =
#}
#建立主数据索引test1
index test1
{
source = src1 #索引的数据源
path = /usr/local/sphinx/var/data/test1 #索引文件所放目录
docinfo = extern
dict = keywords
mlock =
morphology = none
min_word_len = html_strip = charset_type = utf-
charset_table = utf-
}
#主数据索引test1的增量数据索引
#index test1stemmed : test1
#{
# path = /usr/local/sphinx/var/data/test1stemmed
# morphology = stem_en
#}
#建立主数据索引dist1
#index dist1
#{
## type = distributed
# local = test1
# local = test1stemmed
# agent = localhost::remote1
# agent = localhost::remote2,remote3
# agent_connect_timeout =
# agent_query_timeout =
#}
##建立主数据索引rt
#index rt
#{
# type = rt
# path = /usr/local/sphinx/var/data/rt
# rt_field = title
# rt_field = content
# rt_attr_uint = gid
#}
#索引器的配置, 主要用来设置索引器所占内存
indexer
{
mem_limit = 128M
}
#服务进程的配置
searchd
{
listen =
listen = :mysql41
log = /usr/local/sphinx/var/log/searchd.log
query_log = /usr/local/sphinx/var/log/query.log
read_timeout =
client_timeout =
max_children =
persistent_connections_limit =
pid_file = /usr/local/sphinx/var/log/searchd.pid
seamless_rotate =
preopen_indexes =
unlink_old =
mva_updates_pool = 1M
max_packet_size = 8M
max_filters =
max_filter_values =
max_batch_queries =
workers = threads # for RT to work }
common
{
}

a

Sphinx-安装和配置的更多相关文章

  1. centos 下 sphinx安装和配置

    一.安装前提必备先安装工具 yum -y install make gcc g++ gcc-c++ libtool autoconf automake imake mysql-devel libxml ...

  2. sphinx 全文搜索引擎安装与配置

    sphinx 全文搜索引擎 sphinx的安装与配置 ------------------------------------------------------------------------- ...

  3. Sphinx下载、安装、配置、Hello World、文档阅读

    sphinx下载.安装.配置.Hello World.查看文档

  4. sphinx安装记录 转

    [转]sphinx服务器安装及配置详解 安装PHP sphinx扩展 1.架构:ip192.168.0.200 redhat5.4(64位)2.安装   #cd /usr/local/src   #y ...

  5. Sphinx安装流程及配合PHP使用经验

    1.什么是Sphinx Sphinx是俄罗斯人Andrew Aksyonoff开发的高性能全文搜索软件包,在GPL与商业协议双许可协议下发行. 全文检索式指以文档的全部文本信息作为检索对象的一种信息检 ...

  6. Linux Sphinx 安装与使用

    一.什么是 Sphinx? Sphinx 是一个基于SQL的全文检索引擎,可以结合 MySQL,PostgreSQL 做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序 更容易实现专业化 ...

  7. Sphinx 安装与使用

    Sphinx 优点 高速索引(接近10M/S) 高速搜索(2-4G文本搜索耗时不到0.1秒) 高可用性(单CPU支持100GB文本,100M文档) 提供相关性排名.分布式搜索.文档摘要(高亮显示) S ...

  8. sphinx 安装使用

    一.linux(centos)下安装源码包 1.下载  wget http://sphinxsearch.com/files/sphinx-2.3.1-beta.tar.gz 2.安装   切换目录到 ...

  9. JDK安装与配置

    JDK安装与配置 一.下载 JDK是ORACLE提供免费下载使用的,官网地址:https://www.oracle.com/index.html 一般选择Java SE版本即可,企业版的选择Java ...

  10. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

随机推荐

  1. 【BZOJ 2646】【NEERC 2011】flight

    http://www.lydsy.com/JudgeOnline/problem.php?id=2646 夏令营alpq654321讲课时说这道题很简单但并没有几个人提交,最近想复习一下线段树,脑袋一 ...

  2. 【map】【分解质因数】CDOJ1572 Espec1al Triple

    先把公比为1,即前项 中项 末项相同的统计出来.对每一类数C(n,3)即可. 然后我们发现,因为a1*a3=(a2)^2,所以a1和a3进行质因子分解之后,每一个质因子的指数的奇偶性必然相同,否则无法 ...

  3. [AGC019E]Shuffle and Swap

    [AGC019E]Shuffle and Swap 题目大意: 给出两个长度为\(n(n\le10000)\)的\(01\)串\(A_{1\sim n}\)和\(B_{1\sim n}\).两个串均有 ...

  4. 原生js封装的一些jquery方法

    用js封装一些常用的jquery方法 记录一下 hasClass:判断是否有class function hasClass(ele, cls) { if (!ele || !cls) return f ...

  5. uboot如何检测XC2440是从Nand或Nor启动

    转:http://blog.chinaunix.net/uid-22030783-id-3347621.html 在XC2440开发板上做uboot从nandflash启动时,需要检测硬件启动方式,启 ...

  6. Struct2_使用Ajax调用Action方法并返回值

    一.Login.jsp 1.<head>引入jquery: <script type="text/javascript" src="http://aja ...

  7. linux gcc升级备忘录

    1. 拉包 sudo wget http://mirrors.opencas.org/gnu/gcc/gcc-6.3.0/gcc-6.3.0.tar.bz2 #如果以上给出的镜像不可用,也可以是使用h ...

  8. You must have a TTY to run sudo

    1.方法一,给命令行添加tty ssh -t user@foo.com 2.使用sudo visudo修改配置: Defaults:user !requiretty 表示用户user使用sudo命令时 ...

  9. 安装pip源

    国内源地址: 豆瓣(douban) http://pypi.douban.com/simple/ 阿里云 http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 h ...

  10. python命令行添加自动补全和命令历史功能

    # python startup file import readline import rlcompleter import atexit import os # tab completion re ...