linux phpstudy sphinx

本文详细介绍如何从下载、配置到编译安装Sphinx全文检索系统,并解释常见错误及解决方案,包括正确设置MySQL路径避免安装失败,以及如何通过修改配置文件解决索引问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下载对应版本:http://www.sphinxsearch.com/downloads/archive/

这是我的

 

上传或者下载到自己的服务器上

解压缩:tar -xzvf ***

进入解压的文件夹

./configure --prefix=/usr/local/sphinx --with-mysql-includes=/phpstudy/mysql/include/ --with-mysql-libs=/phpstudy/mysql/lib/

编译  这里的--prefix是要安装到的路径  --with-mysql-includes是mysql的加载路径  --with-mysql-libs是mysql的lib的根目录

应为一开始没有指定后两个路径 而且没有自动检索到mysql的配置报错为:

一开始以为是没有mysql_devel傻傻的去安装结果报错止不住。。。如下:

所以!最好能指定的指定目录这个 坑我遇到最多了  因为我懒。。。

继续编译:make

make install

 

 

cd  sphinx/etc/

cp sphinx.conf.dist sphinx.conf

vi sphinx.conf  //连接信息  修改为对应信息

sphinx.conf:配置文件

indexer 索引生成工具

查看searchd工具是否可用:

或者top

search --help:获取相关命令

sphinx:查询mysql数据

mysql -h0 -P9306

原因:
sphinx不能使用主键来做属性字段,你的索引配置文件中一定用了类似
sql_attr_uint = id (id为表的主键)

解决方法:
去掉sql_attr_uint = id
或改为
sql_query = SELECT id,id as aid,body from table
sql_attr_uint = aid
即:在sql_query中给id用as 重新命个名子

 

 

/usr/local/sphinx/bin/searchd --config /usr/local/sphinx/etc/sphinx.conf  开启searchd

/usr/local/sphinx/bin/searchd --stop 关闭searchd

生成index索引 /usr/local/sphinx/bin/indexer --config /usr/local/sphinx/etc/sphinx.conf --all

更新index索引 /usr/local/sphinx/bin/indexer --config /usr/local/sphinx/etc/sphinx.conf --all --rotate

sql_field_string  字符串
sql_attr_int   数字
sql_attr_timestamp  时间戳

top*sphinx能查询的字段在于你返回的字段

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

PHP(Mr. Hamster)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值