linux 配置 sphinx 全文搜索引擎
因为公司网站需要,最近在弄sphinx搜索引擎,也是遇到各种问题,最终终于解决了。
服务器系统:centos7 (64位)
详情看安装官网的安装教程进行 coreseek 3.2.14
这里只提一些注意的地方
1:在安装前先安装基础开发库及数据库依赖
yum install make gcc g++ gcc-c++ libtool autoconf automake imake mysql-devel libxml2-devel expat-devel:
2:下载
wget http://www.coreseek.cn/uploads/csft/3.2/coreseek-3.2.14.tar.gz
3:安装mmseg,这里应该是没有什么问题的。
$ cd mmseg-3.2.
$ ./bootstrap #输出的warning信息可以忽略,如果出现error则需要解决
$ ./configure --prefix=/usr/local/mmseg3
$ make && make install
$ cd ..
4:安装csft
进入到csft目录,先修改src/sphixexpr.cpp这个文件,里面3个地方编译会出错的
将ExprEval改为this->ExprEval
再进行下一步安装,这样就可以了。
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
5:然后就是配置文件,到安装目录下复制一份
cd /usr/local/coreseek/etc
cp sphinx.conf.dist sphinx.conf
vim sphinx.conf
主要修改数据库参数 ,其他一些警告问题,注释掉配置文件里面相应内容即可,暂时未发现问题
type = mysql sql_host = localhost
sql_user = root
sql_pass =
sql_db = test
sql_port =
sql_query_pre = SET NAMES utf8
然后保存,生成索引
cd /usr/local/coreseek/bin
./indexer -c /usr/local/coreseek/etc/sphinx.conf --all
./searchd -c /usr/local/coreseek/etc/sphinx.conf
导入测试数据,调用测试文件
require ( "sphinxapi.php" ); $cl = new SphinxClient ();
$cl->SetServer ( '127.0.0.1', 9312);
$cl->SetConnectTimeout ( 3 );
$cl->SetArrayResult ( true );
$cl->SetMatchMode ( SPH_MATCH_ANY);
$res = $cl->Query ( '网络搜索', "*" );
print_r($cl);
print_r($res);
应该就没有问题,确保系统中文zh_CN.UTF-8,才能保证中文显示
下面是自己公司的情况,可能也有人会有这样的情况。
搜索引擎在一个服务器,而网站及数据库在另一个服务器,这样的情况下需要考虑的
1:coreseek 安装中如果提示libmysqlclient.so.18共享库找不到
在mysql服务器复制一份libmysqlclient.so.18,路径为/usr/lib64/mysql/libmysqlclient.so.18
2:搜索引擎所在的服务器防火墙端口是否开放
centos7先安装
yum install firewalld-config
然后开启端口
firewall-cmd [--zone=<zone>] --add-port=<port>[-<port>]/<protocol> [--timeout=<seconds>]
firewall-cmd --permanent --add-port=10-9900/tc
查询
firewall-cmd --permanent --query-port=/tcp
3:网站php调用api版本必须与coreseek 版本一致。
测试过程可以在php中直接输出
var_dump($cl);//$cl为sphinxClient对象
查看错误信息。
以上问题解决了应该就可以正常使用了。
linux 配置 sphinx 全文搜索引擎的更多相关文章
- sphinx 全文搜索引擎安装与配置
sphinx 全文搜索引擎 sphinx的安装与配置 ------------------------------------------------------------------------- ...
- linux配置sphinx
1. 配置索引 cd /usr/local/sphinx/etc/ cp sphinx.conf.dist sphinx.conf //备份配置文件,防止改错 vim sphinx.conf 配置文件 ...
- sphinx 全文搜索引擎
sphinx的安装与配置 --------------------------------------------------------------------------------------- ...
- Linux系统中ElasticSearch搜索引擎安装配置Head插件
近几篇ElasticSearch系列: 1.阿里云服务器Linux系统安装配置ElasticSearch搜索引擎 2.Linux系统中ElasticSearch搜索引擎安装配置Head插件 3.Ela ...
- 全文搜索引擎 Elasticsearch 入门
1. 百科 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作 ...
- 指尖上的电商---(2)Solr全文搜索引擎的准备工作
Solr是一个基于Lucene的全文搜索引擎.提供了更丰富的搜索语言.更灵活的配置.更高的查询效率. 一句话.与Lucene相比.有过之而无不及.这一节里, 主要谈论两个知识点:Jdk的安装和Tomc ...
- 全文搜索引擎 ElasticSearch 还是 Solr?
最近项目组安排了一个任务,项目中用到了全文搜索,基于全文搜索 Solr,但是该 Solr 搜索云项目不稳定,经常查询不出来数据,需要手动全量同步,而且是其他团队在维护,依赖性太强,导致 Solr 服务 ...
- 【Elasticsearch全文搜索引擎实战】之Head插件实践
简介 Elasticsearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为Ap ...
- 3.高并发教程-基础篇-之分布式全文搜索引擎elasticsearch的搭建
高并发教程-基础篇-之分布式全文搜索引擎elasticsearch的搭建 如果大家看了我的上一篇<2.高并发教程-基础篇-之nginx+mysql实现负载均衡和读写分离>文章,如果能很好的 ...
随机推荐
- 图论(二分图最大权独立点集):COGS 2051. 王者之剑
2051. 王者之剑 ★★★☆ 输入文件:Excalibur.in 输出文件:Excalibur.out 简单对比 时间限制:1 s 内存限制:256 MB [题目描述] 这是在阿尔托 ...
- Merge Intervals——LeetCode
Given a collection of intervals, merge all overlapping intervals. For example,Given [1,3],[2,6],[8,1 ...
- 《ACM国际大学生程序设计竞赛题解Ⅰ》——基础编程题
这个专栏开始介绍一些<ACM国际大学生程序设计竞赛题解>上的竞赛题目,读者可以配合zju/poj/uva的在线测评系统提交代码(今天zoj貌似崩了). 其实看书名也能看出来这本书的思路,就 ...
- Template 使用注意问题和范例
1. 基本定义 模板是 2. 分类 2.1 函数模板 (1) 作用: 函数模板可以用来创建一个通用功能的函数,以支持多种不同形参,进一步简化重载函数的函数体设计. (2)申明方法: template ...
- angularJS $watch $digest $apply
一 简介AngularJS提供了一个非常酷的特性叫做双向数据绑定(Two-way Data Binding),这个特性大大简化了我们的代码编写方式.数据绑定意味着当View中有任何数据发生了变化,那么 ...
- composer安装第三方库
生成composer.json 首先需要安装composer,composer -v出现如下,则表明安装成功. 编写composer.json { "name": "ww ...
- What is therelationship between @EJB and ejb-ref/ejb-local-ref?
http://glassfish.java.net/javaee5/ejb/EJB_FAQ.html What is therelationship between @EJB and ejb-ref/ ...
- JAVA大数类
JAVA大数类api http://man.ddvip.com/program/java_api_zh/java/math/BigInteger.html#method_summary 不仅仅只能查J ...
- [Flux] Stores
Store, in Flux which manager the state of the application. You can use EventEmiiter to listen to the ...
- 谈论C++当然结果
C++编程课程的考试已经结束.这是第一次OJCBT.摸着石头过河,考试没有给学生理解的说法.现在尘埃落定.一些交代. 先说大的成就的治疗原则.事实上,有很多的纠结. 按理说,合格的太,无法挂.但实际情 ...