sphinx 全文搜索引擎安装与配置
sphinx 全文搜索引擎
sphinx的安装与配置
---------------------------------------------------------------------------------------------
SQL 结构化查询语言(是一种标准,所有的关系型数据库Mysql,sqlserver,oracle)
sphinx的使用两种方式:
第一种: 使用sphinx的API来操作sphinx (常用)
sphinx可以使用API类,也可以将api编译到PHP中做为扩展
第二种: 使用mysql的sphinx的存储引擎
sphinx 这是英文的全文检索引擎
coreseek 这是支持中文词库的全文检索引擎
区别:
英文的文章 怎么能区分哪个词 以空格来区分词的
中文的文章 我爱北京天安门 中文词库
使用sphinx的步骤:
1、安装
cd E:/usr/local/coreseek-3.2.14-win32
2、配置(配置文件 csft_mysql.conf)
配置文件格式
1、数据源定义 (指向你数据的来源 ,通常是mysql)
2、索引 (索引的一些配置信息)
3、indexer (内用的内存---基本不需要设置)
4、searchd (服务器的一些配置---)
注意:
1、一个配置文件可以配置多个数据源和索引 ((1,2),(1,2),nnnn)
2、sql_query 主查询(把数据库表中的哪些字段查询出来--根据你页面的搜索条件)
select 第一个字段(一定是主键)
3、indexer.exe -c 配置文件 --all(参数--all 表示创建全部索引)
.\bin\indexer.exe -c .\etc\csft_mysql.conf --all
4、启动searchd 服务 searchd.exe -c 配置文件
.\bin\searchd.exe -c .\etc\csft_mysql.conf
5、php 操作sphinx
------------------------------------------------------------------------------------------
sphinx搜索引擎如何引用在Yii 框架中
先安装测试好 就 不用我多说了吧!
下面配置一下 csft_mysql.conf 配置文件,进行数据库配置

在vendor目录下创建一个文件夹sphinx 然后把sphinxapi.php放入文件夹中
在公共文件的配置文件中的任意一个(如:bootstrap.php)写入下面这句话
或者是在要用到sphinx的控制器的顶部或方法里写入 也行
Yii::$classMap['SphinxClient']="@vendor/sphinx/sphinxapi.php";
在控制器的顶层写上命名空间
use SphinxClient;
在控制的方法中实例化对象
如:
$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);

然后查到的索引的 id ,运用查到的id 来查询数据库中有关搜索的数据

将查到的数据 传到 views 视图里,遍历出来 ,这就是sphinx在Yii框架中的简单应用
sphinx 全文搜索引擎安装与配置的更多相关文章
- Sphinx下载、安装、配置、Hello World、文档阅读
sphinx下载.安装.配置.Hello World.查看文档
- sphinx 全文搜索引擎
sphinx的安装与配置 --------------------------------------------------------------------------------------- ...
- linux 配置 sphinx 全文搜索引擎
因为公司网站需要,最近在弄sphinx搜索引擎,也是遇到各种问题,最终终于解决了. 服务器系统:centos7 (64位) 详情看安装官网的安装教程进行 coreseek 3.2.14 这里只提一些注 ...
- Sphinx中文分词安装配置及API调用
这几天项目中需要重新做一个关于商品的全文搜索功能,于是想到了用Sphinx,因为需要中文分词,所以选择了Sphinx for chinese,当然你也可以选择coreseek,建议这两个中选择一个,暂 ...
- (转)Sphinx中文分词安装配置及API调用
这几天项目中需要重新做一个关于商品的全文搜索功能,于是想到了用Sphinx,因为需要中文分词,所以选择了Sphinx for chinese,当然你也可以选择coreseek,建议这两个中选择一个,暂 ...
- 全文搜索引擎 Elasticsearch 安装
全文搜索引擎 Elasticsearch 安装 学习了:http://www.ruanyifeng.com/blog/2017/08/elasticsearch.html 拼音:https://www ...
- ElasticSearch搜索引擎安装配置拼音插件pinyin
近几篇ElasticSearch系列: 1.阿里云服务器Linux系统安装配置ElasticSearch搜索引擎 2.Linux系统中ElasticSearch搜索引擎安装配置Head插件 3.Ela ...
- ElasticSearch搜索引擎安装配置中文分词器IK插件
近几篇ElasticSearch系列: 1.阿里云服务器Linux系统安装配置ElasticSearch搜索引擎 2.Linux系统中ElasticSearch搜索引擎安装配置Head插件 3.Ela ...
- Linux系统中ElasticSearch搜索引擎安装配置Head插件
近几篇ElasticSearch系列: 1.阿里云服务器Linux系统安装配置ElasticSearch搜索引擎 2.Linux系统中ElasticSearch搜索引擎安装配置Head插件 3.Ela ...
随机推荐
- jfinal对象封装Record原理
/*DbPro.class*/ public transient Record findFirst(String sql, Object paras[]{ List result = find(sql ...
- Create STATISTICS,UPDATE STATISTICS
该命令在一张表或者索引了的视图上更新查询优化统计数字信息. 默认情况下, 查询优化器已经更新了必要的用来提高查询计划的统计信息; 在某些情况下, 你可以通过使用UPDATE STATISTICS 命令 ...
- unity,将camera设为don't clear在android上会显示不正常
将camera设置为don't clear,在pc和ios上显示没问题,但在android上显示不正常,改为only depth可以.
- Anaconda多环境多版本python配置指导
Anaconda多环境多版本python配置指导 字数3696 阅读644 评论0 喜欢0 最近学python,读完了语法后在GitHub找了一些练习来做,由 于学的是python3.x语法,而Git ...
- C#动态数组ArrayList和List<T>的比较
C#中一维动态数组(即列表)分ArrayList和List<T>两种,其容量可随着我们的需要自动进行扩充 一.ArrayList类(少用) ArrayList位于System.Collec ...
- Innodb锁机制:Next-Key Lock 浅谈(转)
http://www.cnblogs.com/zhoujinyi/p/3435982.html 数据库使用锁是为了支持更好的并发,提供数据的完整性和一致性.InnoDB是一个支持行锁的存储引擎,锁的类 ...
- Oracle监控代理安装ITM(IBM Tivoli Monitoring)
1 监控代理安装 2 1.1 安装 2 1.1.1 解压安装包 2 1.1.2 安装 2 1.2 配置 5 1.2.1 给Agent授权 5 1.2.2 配置Oracle Agent 10 目录 1 ...
- [转]Hibernate3如何解决n+1 selects
摘自: http://blog.chinaunix.net/uid-20586655-id-287959.html Hibernate3中取得多层数据的所产生的n+1 selects问题的解决 ...
- Nova分析(1)——整体架构
Conceptual Diagram Logical diagram Nova is the most complicated and distributed component of OpenSta ...
- Javascript 图片左右滑动与切换
Html代码 : <div class="v_out v_out_p"> <div class="prev"> <a href=& ...