linux安装sphinx

coreseek官方手册灰常详细:http://www.coreseek.cn/products-install/install_on_bsd_linux/

原理和索引配置就不写了,简单的记录一下使用。

下载tar.gz

./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

–with-mysql-includes=/usr/local/mysql/include

–with-mysql-libs=/usr/local/mysql/lib

为方便也copy官方说明的直接用,sphinx-min.conf.dist  我复制了一个 改名为csft.conf

这文件里面配置了一个 索引名叫test1的,source 处稍微改一下,比如数据库用户名密码,连接的库等。改成自己想用的。

测试数据是 coreseek/etc/example.sql 

mysql -u root -p

123

use test

source /usr/lcoal/coreseek/etc/example.sql

也可以在nginx下配置个 phpmyadmin,去windows下访问导入多爽:如

server {
        listen       80;
        server_name  mysql.120.net;
        autoindex on;
        root   /data/www/phpmyadmin;
        index   index.php index.html index.htm;
        location ~ .php$  {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        fastcgi_index  index.php;
            include        fastcgi.conf;
        }
   }

linux  /etc/hosts

添加 127.0.0.1 mysql.120.net  便于开图形界面 用firefox访问

windows下改host文件添加

192.168.26.11 mysql.120.net

phpmyadmin管理数据库更方便。

 

coreseek目录下:
/usr/local/coreseek/bin/indexer -c etc/csft.conf  测试配置是否正确
/usr/local/coreseek/bin/indexer -c etc/csft.conf xx  或者 –all为文件中全部索引项建立索引

/usr/local/coreseek/bin/search -c etc/csft.conf 测试搜索
/usr/local/coreseek/bin/search -c etc/csft.conf -a document 搜索关键词document

开启服务式:
/usr/local/coreseek/bin/searchd -c etc/csft.conf  开始监听  看一下 ip和 端口号  (文件中searchd 段 默认配置的是9312)

不放心windows  cmd  telnet 192.168.26.11 9312  竟然显示一个笑脸。。。有创意!

 

/usr/local/coreseek/bin/searchd -c etc/csft.conf –stop  如要停止搜索服务,请使用

/usr/local/coreseek/bin/indexer -c etc/csft.conf –all –rotate  如要已启动服务,要更新索引,请使用

 

开启服务吧?

弄个sphinxapi.php  (怎么linux安装完了就没带?没找到。windows版本的各种语言测试例子。)

新建个php文件:

<?php
include ‘sphinxapi.php’;
$sp = new SphinxClient();
$sp->SetServer(‘192.168.26.11‘,9312);
$sp->SetConnectTimeout(5);

$sp->SetLimits(0, 10);//($start, $limit);

echo $keyword=(isset($_GET['kw'])&& !empty($_GET['kw'])) ?trim($_GET['kw']) : ‘test’;

//在执行搜索之前,可以加入各种条件
$result=$sp->Query($keyword,’test1‘); //使用的索引名  一个配置文件可以配置n个
print_r($result);
//处理$result
$matches = isset($result['matches']) ? $result['matches'] : ”;
if ($matches == ”)
{
return array();
}
$ids = array_keys($matches);

$id_str = implode(",", $ids);
echo $id_str;

//去mysql用id查询结果

 

http://localhost/php/sphinx.php?kw=test

testArray(    [error] =>     [warning] =>     [status] => 0    [fields] => Array        (            [0] => title            [1] => content        )    [attrs] => Array        (            [group_id] => 1            [date_added] => 2        )    [matches] => Array        (            [1] => Array                (                    [weight] => 2                    [attrs] => Array                        (                            [group_id] => 1                            [date_added] => 1331439922                        )                )            [2] => Array                (                    [weight] => 2                    [attrs] => Array                        (                            [group_id] => 1                            [date_added] => 1331439922                        )                )            [4] => Array                (                    [weight] => 1                    [attrs] => Array                        (                            [group_id] => 2                            [date_added] => 1331439922                        )                )        )    [total] => 3    [total_found] => 3    [time] => 0.000    [words] => Array        (            [test] => Array                (                    [docs] => 3                    [hits] => 5                )        ))1,2,4
此条目发表在 Linux 分类目录,贴了 , , , , , 标签。将固定链接加入收藏夹。

linux安装sphinx》有 1 条评论

  1. zxsz4085 说:

    linux 的coreseek包解压完成后的文件夹coreseek中包含csft-xx文件夹和mmseg文件夹 和一个 testpack 文件夹  。

    testpack文件夹中就是一些api和例子。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>