转载:http://zhan.renren.com/longmensoft?gid=3602888498043096197&checked=true

把我的运行环境简单说一下:windows XP,装了php/mysql

下面进入正题:

1.到官网下载coreseek

2 安装执行环境,一般系统都会有安装,官网有说明

3.将下载的coreseek压缩包解压到你觉得合适的位置,把主文件夹的名字改为你觉得合适的名字。

4.MYSQL测试:

在MYSQL的test数据库中,导入coreseek文件夹下的sql文件:    var\test\documents.sql

这样就生成了测试用的数据表 test.documents

下面这一步很关键,我就在这一步上被卡了好长时间:

打开etc下的csft_mysql.conf,填入登陆mysql需要的基本信息。

maybe 新手对配置搞不懂,请参看http://www.borghan.com/archives/using-coreseek-with-PHP-with-multiple-indexes.html

5.建立索引

通过修改csft_mysql.conf的配置或者创建新的conf文件,就可以指定要建立索引的数据表以及建立索引的方式。如何配置请参看官方手册,或者这篇文章:

http://www.linuxidc.com/Linux/2013-05/83857.htm

这里只是对coreseek默认的测试数据表 test.documents,以其默认的方式建立索引。

建立索引需要进入cmd,用dos模式工作:

在dos下进入coreseek的主文件夹下,执行如下命令:

bin\indexer -c etc\csft_mysql.conf --all

数据表 test.document的索引就建立好了

6.查询

还是在dos模式下,键入

bin\search -c etc\csft_mysql.conf xxxx

xxxx就是你要查询的内容,dos下最好只查询英文内容,因为dos下由于编码原因,不一定能查询出来。

dos下的查询主要是起到测试的作用,真正的查询应该还是要通过调用API

7.启动搜索服务

还是在dos模式下,键入

bin\searchd -c etc\csft_mysql.conf

这样coreseek就进入监听查询命令的状态

注意,进入监听后这个dos窗口不能关闭,不然监听就结束了。

8.php调用coreseek

大概分三个步骤:

(1)调入coreseek目录下的api//sphinxapi.php

(2)对查询命令SphinxClient()进行配置,配置的详细说明见官方手册或参看下文:

http://www.linuxidc.com/Linux/2013-05/83858.htm

(3)查询

程序如下:

<?

//第一步:

require_once "E:/coreseek/api/sphinxapi.php";// 我的coreseek安装在E:/coreseek目录下,你需要根据你的coreseek的位置进行调整

//第二步:

$sphinx = new SphinxClient();

$sphinx->SetServer ( 'localhost', 9312 );//coreseek的主机名和端口

$sphinx->SetArrayResult ( true );//设置返回结果集为php数组格式

$sphinx->SetLimits(0, 20, 1000);//匹配结果的偏移量,参数的意义依次为:起始位置,返回结果条数,最大匹配条数

$sphinx->SetMaxQueryTime(10);//最大搜索时间

//第三步:

$result = $sphinx->query ('xxxx', "mysql");//xxxx是查询的内容,mysql是测试的配置文件中系统默认的类名

//结果:

print_r($sphinx);//显示所有SphinxClient()类的内容,如果发生查询错误,也可以在这里找到。

print_r($result);//显示查询结果信息,

/*total是匹配到的数据总数量

matches是匹配的数据,包含id,attrs这些信息

words是搜索关键字的分词

并不会返回像mysql那样的数据数组

*/

?>

看完之后可参看http://www.borghan.com/archives/using-coreseek-with-PHP-with-multiple-indexes.html Coreseek多表索引搜索

windows下的coreseek安装及PHP调用入门的更多相关文章

  1. oracle学习笔记1:windows下oracle数据库安装及.net调用oracle数据库

    1.下载32位或64位oracle数据库并且安装,安装时可以选择安装数据库实例或者不安装,如果不安装的话之后可以用Database Configuration Assistant(DBCA) 通过向导 ...

  2. windows下nginx的安装及使用方法入门

    nginx功能之一可以启动一个本地服务器,通过配置server_name和root目录等来访问目标文件 一. 下载 http://nginx.org/   下载后解压   二. 修改配置文件 ngin ...

  3. Windows下MetaMap工具安装

    Windows下MetaMap工具安装 一.Main MetaMap安装 Prerequisties 12G磁盘空间 JAVA6 or newer JRE or SDK installed Downl ...

  4. sphinx在windows下的简单安装与使用

    1.下载地址 http://sphinxsearch.com/downloads/release/,我这里下的是“Win64 binaries w/MySQL+PgSQL+libstemmer+id6 ...

  5. windows下的tfjs-node安装异常总结

    大约有半年没有写博客了,奔波于上海这座魔都之中.险些忘了自己是个有梦想的全栈工程师 书接上回,由于个人非常厌恶python的语法,半年前发现了tensorflow.js这个宝贝(下简称tfjs),喜出 ...

  6. Windows下的Memcache安装 linux下的Memcache安装

    linux下的Memcache安装: 1. 下载 memcache的linux版本,注意 memcached 用 libevent 来作事件驱动,所以要先安装有 libevent. 官方网址:http ...

  7. Windows下的Memcache安装

    Windows下的Memcache安装: 1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached2. 在终端(也即cmd命令界面)下输入 'c:\memca ...

  8. Windows下 VM12虚拟机安装OS X 10.11 和VM TOOLS

    Windows下虚拟机安装Mac OS X —– VMware Workstation12安装Mac OS X 10.11 本文即将介绍WIN虚拟MAC的教程.完整详细教程(包含安装中的一些问题) [ ...

  9. Windows下Memcache的安装与在php中使用

    memcache dll插件和测试例子下载地址: http://pecl.php.net/package/memcache Windows下Memcache的安装方法 Memcached官方:http ...

随机推荐

  1. [Golang学习笔记] 08 链表

    链表(Linked list)是一种常见数据结构,但并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针. 由于不必须按顺序存储,链表在插入的时候可以达到O(1),比顺序表快得多,但是查 ...

  2. ACM--移动桌子--贪心--HDOJ 1050--Moving Tables

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Problem Descript ...

  3. 20155220 2016-2017-2 《java程序设计》第四周总结

    教材学习内容总结 第六章 继承与多态 继承 继承的基本原则是: 子类继承父类的所有成员变量(包括静态成员): 子类继承除父类构造方法外的所有成员方法(包括静态方法): 子类不能继承父类的构造方法,但在 ...

  4. [2016北京集训测试赛5]azelso-[概率/期望dp]

    Description Solution 感谢大佬的博客https://www.cnblogs.com/ywwyww/p/8511141.html 定义dp[i]为[p[i],p[i+1])的期望经过 ...

  5. 【MySQL函数】replace()函数

    1.replace()函数 语法:replace(a,b,c) a的b部分被c替换 案例:select replace(abcde,bcd,123)-- 结果a123e

  6. 原生android(二)——认识activity

    一.activity的生命周期 1.onCreate():在活动第一次被创建的时候调用,用来完成活动的初始化操作,如加载布局.绑定事件等 2.onStart():在活动由不可见变为可见时被调用 3.o ...

  7. robotframework 脚本编写规范

    测试集.脚本 测试脚本的名字不要超过20个字符,文件类型应该为txt  名字必需易读且有意义(看名知意)  记住测试集的名字是自动根据文件.目录的名字创建的.后缀名会被截去,下划线会转换为空格,如果名 ...

  8. hbase和ZooKeeper集群安装配置

    一:ZooKeeper集群安装配置 1:解压zookeeper-3.3.2.tar.gz并重命名为zookeeper. 2:进入~/zookeeper/conf目录: 拷贝zoo_sample.cfg ...

  9. redis 批量删除操作

    redis 批量删除操作 需要在redis里面清空一批数据,redis没有支持通配符删除, 只有del key1 key2 ... 但是可以通配符获取 KEYS PATTERN 然后利用linux管道 ...

  10. “错误: 编码GBK的不可映射字符” 的解决方案

    命令行下,用javac命令编译java程序时,如果文档的编码为“utf-8”,并且含有中文字符时,会出现乱码现象,编译通过不了.如图: 解决方案:编译时指定编码方式,防止乱码.如下: