• Windows下安装 使用coreseek


    1.安装

    1.01:到官网下载 coreseek-3.2.14

    1.01_1 原理

    缓存服务器:

        准备数据 来自数据库 配置连接  生成索引

        开启服务

        流程:用户-> web->sphinx->web(ids集合)->mysql->web->人

    1.02:安装

      1、下载后解压得到源程序目录 coreseek-3.2.14 ,文件夹重命名一下,简单一些,命名为 coreseek;将 coreseek 文件夹移动到 F:my-php est下(位置随意);
      2、“开始”——>“运行”——>输入cmd,打开命令行窗口——>执行 "F: 回车"——>执行 "cd wwwcoreseek",进入到 coreseek目录下;
      3、执行 "set PATH=?%in;%PATH%"。设置path,目的是为了能够调用bin目录下的 cat.exe、iconv.exe 等;
      4、首先创建索引:

        4.1:修改配置文件.coreseeketccsft_mysql.conf (我用的mysql源) 如下:

        #MySQL数据源配置
        #源定义
        source mysql
        {
            type                   = mysql
            sql_host                  = 127.0.0.1
            sql_user                  = root
            sql_pass                     =
            sql_db                        = php
            sql_port                  = 3306
            sql_query_pre             = SET NAMES utf8
          sql_query                    = SELECT o_id, o_name, o_title FROM otest WHERE o_start = 1
                                                                  #sql_query第一列id需为整数
                                                                  #title、content作为字符串/文本字段,被全文索引
            sql_query_info_pre      = SET NAMES utf8                                        #命令行查询时,设置正确的字符集
            sql_query_info             = SELECT * FROM otest WHERE o_id=$id #命令行查询时,从数据库读取原始数据信息
        }

        其他的  几个部分  只要将相对路径改为绝对路径就OK了不在进行其他的操作

        4.2在命令行窗口进行索引创建 执行命令如下: binindexer -c etccsft_mysql.conf --all

        5、将 searchd 安装成为一个服务。执行命令如下: binsearchd -c etccsft_mysql.conf

      成功如下:

    2:使用

     header("content-type:text/html;charset=utf-8");
      //获取到搜索的数据 $keyword = $_POST['search'];
      //实例化sphinx类 $sphinx = new SphinxClient();
      //开启服务 $sphinx->SetServer("localhost",9312); $sphinx->SetMatchMode(SPH_MATCH_ANY);
      //执行数据搜索 $result=$sphinx->query("$keyword","*");
      //获取到索引里对应的数据 $key = array_keys($result['matches']);
      //转化为字符串 $ids = implode(',',$key);
      //连接数据库 $conn = mysql_connect('localhost','root','root')or die('mysql connect failed');
      //选择数据库 mysql_select_db('test');
      //设置字符集 mysql_set_charset('utf8',$conn);
      //设置查询数据 $sql = "select * from otest where o_id in($ids)";
      //执行查询语句 $res = mysql_query($sql);
      //设置 要追加的标签 $opt = array("before_match"=>"<font style='font-weight:bold;color:#f00'>","after_match"=>"</font>");
      //循环 数据 然后追加标签 while($row=mysql_fetch_assoc($res)){
      $data[] = $sphinx->buildExcerpts($row,'mysql',$keyword,$opt);
     }
      //打印数据
     print_r($data);
      //关闭服务
     $spinx->close();

    运行结果展示如下:

     
  • 相关阅读:
    TDirectory.GetParent获取指定目录的父目录
    TDirectory.GetLogicalDrives获取本地逻辑驱动器
    获取设置目录创建、访问、修改时间
    TDirectory.GetLastAccessTime获取指定目录最后访问时间
    TDirectory.GetDirectoryRoot获取指定目录的根目录
    「洛谷P1262」间谍网络 解题报告
    「洛谷P1198」 [JSOI2008]最大数 解题报告
    「洛谷P3931」 SAC E#1
    「UVA1328」「POJ1961」 Period 解题报告
    「博客美化」I 页面的CSS
  • 原文地址:https://www.cnblogs.com/laowenBlog/p/5251855.html
Copyright © 2020-2023  润新知