云服务器293元/年
阅读模式:

mysql中文分词全文搜索索引讯搜的安装

查看:2608  回复:3  类型:  来源:php自学网  标签 linux centos shell 运维 索引 全文索引 中文分词

        迅搜开源免费高性能多功能简单易用的专业全文检索技术方案,帮助一般开发者针对既有的海量数据,快速而方便地建立自己的全文搜索引擎。全文检索可以帮助您降低服务器搜索负荷、极大程度的提高搜索速度和用户体验。

     讯搜的安装开机启动脚本搭建过程:

一、官网下载讯搜软件xunsearch-full-1.4.10.tar.bz2

wget -c http://www.xunsearch.com/site/downfile?file=xunsearch-full-1.4.10.tar.bz2

二、解压软件包

tar -xjf xunsearch-full-1.4.10.tar.bz2
cd xunsearch-full-1.4.10

三、安装迅搜,安装目录:/usr/local/xunsearch/

chmod +x setup.sh
sh setup.sh

四、启动迅搜

[root@localhost] /usr/local/xunsearch/bin/xs-ctl.sh restart
#启动信息
INFO: re-starting server[xs-indexd] ... (BIND:127.0.0.1:8383)
INFO: re-starting server[xs-searchd] ... (BIND:127.0.0.1:8384)

五、设置开机启动shell脚本,脚本是自己写的,写的比较简单,但能用

    1.新建脚本文件

vim /etc/init.d/xunsearch
chmod +x xunsearch

    2.启动shell脚本代码

#! /bin/bash
# chkconfig: 345 86 16
#author:zuoping
name=xs-ctl.sh
path=/usr/local/xunsearch/bin/
case "$1" in
  start)
    ${path}${name} start
    echo '迅搜服务已开启'
  ;;
  stop)
    ${path}${name} stop
    echo '迅搜服务已停止'
  ;;
  restart)
    ${path}${name} restart
    echo '迅搜服务已重启'
  ;;
  *)
    echo "use /etc/init.d/ start|stop|restart" 
  ;;
esac

    3.运行脚本测试

#开启
./xunsearch start
#停止
./xunsearch stop
#重启
./xunsearch restart

六、脚本加入系统服务

chkconfig --add xunsearch
chkconfig xunsearch on

七、重启系统生效,运行服务

#查看迅搜是否开启,如果没有则设置开机启动不成功
ps -ef |grep xs-searchd
#服务的重启、开启和停止操作
service xunsearch restart
service xunsearch start
service xunsearch stop

完成迅搜全文搜索服务端的搭建

八、查看讯搜离线手册,php使用讯搜api处理数据

xs_php_manual.chm


九、导入数据到迅搜php查询迅搜中的数据

在迅搜中文分词查询数据的时候,是需要先把数据库中的数据先导入到迅搜中,再进行查询导入的数据。

php数据导入和查询代码:

    1.复制迅搜sdk到网站目录中,供php调用

cp /usr/local/xunsearch/sdk/php /usr/local/nginx/html/xunsou

    2.配置迅搜配置文件

vim /xunsearch/app/demo.ini
#配置文件内容

#项目名设置,一个表可以设置一个项目
project.name = demo

#字符编码设置
project.default_charset = utf-8

#迅搜端口设置
server.index = 8383
server.search = 8384

#字段设置,[]中的字符串对应数据库中表的字段,具体使用可以看上面手册
[id]
type = id

[title]
index = self

[seo]
index = self

[content]
type = body

    3.引入sdk中的类文件并实例化,导入数据到迅搜和查询搜索中的数据操作php代码

        3.1导入数据

//引入迅搜sdk类文件
require '/xunsearch/lib/XS.php';
// 建立 XS 对象,项目名称为:demo
$xs = new XS('demo'); 
//清空数据
$xs->index->clean();
//测试数据数据,实际使用可以去数据库中查询
$data = array(
    'id' => 235,
    'title' => '测试文档的标题',
    'seo' => '测试文档子标题',
    'content' =>'测试文档内容'
);
//插入数据
$doc = new XSDocument;
$doc->setFields($data);
$xs->index->add($doc);

        3.2查询数据

//插入数据后,进行中文分词查询
$docs = $xs->search->search('测试');
var_dump($docs);

需要注意的是,php代码每次搜索的时候,搜索的是导入迅搜的数据,不会去读数据库的数据,数据库的数据是通过php导入到迅搜中。(迅搜和mysql之间的关系是导入和获取关系)为了保证数据的实时,需要通过脚本进行定时导入数据到迅搜中的操作。或者每当数据更新时进行数据导入操作。

分享到:
0 0

*有问题之处烦请在评论中指出非常感谢!
不是我想要的内容,继续搜索:

扫描二维码手机查看

最新评论:
OLG-余祥伟  发表于 2017-10-13 14:22:01  中国广东深圳
沙发
安装直接php search就可以用? 回复
站长 回复 OLG-余祥伟 安装好后需要调用迅搜的sdk,然后导入数据到迅搜中,在搜索的时候进通过sdk行查询.
2017-10-13 23:06 中国广东深圳 回复
OLG-余祥伟 回复 OLG-余祥伟 站长出个教程呗!
2017-10-14 17:10 中国广东深圳 回复
回复:[主题]
表情:
 提交评论
清空

发布评论:


登录:
  表情:
评论话题
推荐阅读:
linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:4079centos7开启交换内存   阅读:3752linux教程,鸟哥私房菜(pdf全集)   阅读:2132给网站添加一键新浪微博登录的功能   阅读:3037ajax+php 实现一个简单的在线聊天室功能(附带源码)   阅读:3972mysql的四种索引类型   阅读:5367mysql数据一键导出到csv文件   阅读:2353面试都会问你为什么你从上一家公司离职的真实意思   阅读:4983nginx编译安装后对nginx进行平滑升级   阅读:958爱编程,也爱健康   阅读:1509shell脚本统计当前服务器并发连接数   阅读:2731爱编程,也爱健康   阅读:1509企业让你去面试,可能不是真的招人   阅读:2551centos 7 安装 nginx-1.11.10   阅读:4067mysql中文分词全文搜索索引讯搜的安装   阅读:2609解决 nginx 413 request entity too large   阅读:1873nginx编译安装后对nginx进行平滑升级   阅读:958mongodb设置shell开机启动脚本   阅读:3251最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:16328知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:2500用php从1乘到100的值   阅读:2845linux时间戳有趣的情人节秒1234567890   阅读:1989centos 7 忘记root密码   阅读:1754php压缩页面的html代码一行显示   阅读:3045web性能测试工具ab的测试方法   阅读:2099javascript对cookie操作详细代码函数   阅读:2186PHP 鸟哥:我也曾经是“不适合”编程的人   阅读:3586面试的时候回去等通知,等电话的真实意思   阅读:10085Mysql在大型网站的应用架构演变   阅读:2157简单的DOS攻击之死亡之ping详解   阅读:17225一步步带你,如何网站架构   阅读:1780浅谈javascript的函数节流   阅读:1886一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:16599用php从1乘到100的值   阅读:2845企业让你去面试,可能不是真的招人   阅读:2551“米粉节”背后的故事——小米网抢购系统开发实践   阅读:1812mysql5.7开启sql日志的配置   阅读:2941php生成二维码   阅读:2454linux时间戳有趣的情人节秒1234567890   阅读:1989php显示刚刚、几分钟前、几小时前、几天前的函数   阅读:2869javascript对cookie操作详细代码函数   阅读:2186crontab+shell脚本实现定时备份mysql数据库   阅读:2569移动端自适应rem原理   阅读:5840centos 7 忘记root密码   阅读:1754javascript获取两个日期间的所有日期   阅读:531最新centos7 搭建LNMP环境(centos7.2+php7+mysql5.7+nginx1.11+redis3.2)   阅读:5575javascript获取两个日期间的所有日期   阅读:531Nginx 配置文件详解   阅读:1998知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:2500web性能测试工具ab的测试方法   阅读:2099