Elasticsearch5.3 学习(一):安装、Yii2.0 下载es扩展
Elasticsearch是一个基于Lucene,提供了一个分布式多用户能力的全文搜索引擎。其他就不多说了,官方文档有详细的介绍。
我自己是在CentOS 7.0安装的
Elasticsearch 是在Elasticsearch官网下载的最新版本 5.3 https://www.elastic.co/cn/
Elasticsearch 不需要安装,自己解压后运行就可以了 切换到解压后的bin目录。/path/elasticsearch-5.3.0/bin/
./elasticsearch 前台运行 ./elasticsearch -d 后台运行
成功运行要确保Linux 系统安装了Java环境,因为Es是Java开发的 5.3 需要Java1.8及以上版本
Java环境安装,可以下载源码包编译安装,也可以yum 安装,我是yum安装的,yum安装首先可以搜索openjdk
找到x86_64对应的安装包 java-1.8.0-openjdk.x86_64 : OpenJDK Runtime Environment, 安装
一切就绪,能得到这样的json数据就表示成功了
我用的Yii2.0框架,下载 elasticsearch-php , composer require "elasticsearch/elasticsearch:~5.0"
下载完,首先配置ES 连接地址
需要注意的是,要想配置生效 把ClientBuilder.php 文件中的 private 改成 public,不然默认连接的是127.0.0.1:9200
然后就是Es的增删改查了
新增
public function actionTest(){
$client = Yii::$app->elasticsearch->build();
$params = [
'index' => 'my_index',
'type' => 'my_type',
'id' => 'my_id_1',
'body' => ['testField' => 'abc','name' => 'dong']
]; $response = $client->index($params);
print_r($response);
}
按id精确搜索
public function actionSearch(){
$client = Yii::$app->elasticsearch->build();
$params = [
'index' => 'my_index',
'type' => 'my_type',
'id' => 'my_id'
];
$data = $client->get($params);
var_dump($data);
}
按字段搜索
public function actionMatch(){
$client = Yii::$app->elasticsearch->build();
$params = [
'index' => 'my_index',
'type' => 'my_type',
'body' => [
'query' => [
'match' => [
'name' => 'dong'
]
]
]
]; $response = $client->search($params);
var_dump($response);
}
删除一条数据
public function actionDelete_document(){
$es = Yii::$app->elasticsearch->build();
$params = [
'index' => 'my_index',
'type' => 'my_type',
'id' => 'my_id'
]; $response = $es->delete($params);
var_dump($response);
}
删除一个索引
public function actionDelete_index(){
$es = Yii::$app->elasticsearch->build();
$deleteParams = [
'index' => 'my_index'
];
$response = $es->indices()->delete($deleteParams);
var_dump($response);
}
创建一个索引
public function actionCreate_index(){
$es = Yii::$app->elasticsearch->build();
$params = [
'index' => 'my_index',
'body' => [
'settings' => [
'number_of_shards' => 2,
'number_of_replicas' => 0
]
]
]; $response = $es->indices()->create($params);
var_dump($response);
}
下一篇,写中文分词
Elasticsearch5.3 学习(一):安装、Yii2.0 下载es扩展的更多相关文章
- Centos6.5中 一键安装LNMP 安装Yii2.0 手工配置
1.一键安装LNMP cd /usr wget -c http://soft.vpser.net/lnmp/lnmp1.2-full.tar.gz tar zxf lnmp1.-full.tar.gz ...
- centos7安装redis3.0和phpredis扩展详细教程(图文)
整理一下centos7安装redis3.0和phpredis扩展的过程,有需要的朋友可以拿去使用. 一.安装redis3.0 1.安装必要的包 yum install gcc 2.centos7安装r ...
- 关于在Windows下Composer下载安装Yii2.0
先是composer的安装,主要有两个方式,一个直接下载安装包安装,Composer-steup.exe文件,第二种直接下载composer.phar文件,用php去运行这个文件可以一样起到作用,之后 ...
- Yii2.0 手动添加扩展 redis为例
手动下载yii2-redis扩展包(https://github.com/yiisoft/yii2-redis )并解压 将解压后的文件移至/vebdor/yiisoft命名为yii2-redis 打 ...
- windows2012 下面php7.2 安装mongodb4.0.4的扩展以及操作mongodb的方法
php连接mongodb驱动 的下载页面http://pecl.php.net/package/mongodb 数据插入: $manager = new MongoDB\Driver\Manager( ...
- PHP框架Yii2.0安装(基础版、高级版)
最近农成也是切入了yiiframework 2.0,就是安装yii2.0就花费了不少的时间,为此做了很多的弯路,特此写一篇博文来给后面学习的同学少走一点的弯路.写的不好的地方欢迎各位学习的同学们能够指 ...
- yii2.0框架安装心得
yii2.0安装心得 能够搜索到这篇文章的朋友相信是对yii框架有兴趣的,但是我不得不吐槽的是,这个安装过程确实让人头疼,接下来就让大家见证一下这个纠结的过程 根据官网的说法,安装这个框架需要用到co ...
- Yii2.0的安装与配置教程
版权声明:本文为博主原创文章,未经博主允许不得转载. PHP版本需求:PHP5.4.0以上,因为Yii2.0基于PHP5.4以上版本进行了完全重写. 目前有两种方法可以安装Yii2.0,一种是安装Co ...
- yii2.0的学习之旅(一)
一. 通过composer安装yii2.0项目 *本文是根据您已经安装了composer (1)跳转到项目根目录 cd /xxxx/www (2)下载插件 composer global requir ...
随机推荐
- redis的lua脚本拓展,返回nil及其判断
redis自带的lua脚本 127.0.0.1:6379> hget team wyc "{\"name\":\"wyycc\",\" ...
- socket第三方库 AsyncSocket(GCDAsyncSocket)
Socket描述了一个IP.端口对.它简化了程序员的操作,知道对方的IP以及PORT就可以给对方发送消息,再由服务器端来处理发送的这些消息.所以,Socket一定包含了通信的双发,即客户端(Clien ...
- 使用 SQL Server 的 uniqueidentifier 字段类型
原文:使用 SQL Server 的 uniqueidentifier 字段类型 SQL Server 自 2008 版起引入了 uniqueidentifier 字段,它存储的是一个 UUID, 或 ...
- map以及iterator迭代器
https://www.cnblogs.com/fnlingnzb-learner/p/5833051.html https://www.cnblogs.com/hdk1993/p/4419779.h ...
- 16个Linux服务器监控命令
在不同的Linux发行版中,会有不同的GUI程序可以显示各种系统信息,比如SUSE linux发行版中,就有非常棒的图形化的配置和管理工具YaST,KDE桌面环境里的KDE System Guard也 ...
- .net的远程调用
.Net远程调用(转自:http://www.cnblogs.com/omilan/articles/3191378.html) 看到了这.net远程调用的讲解,觉得不错,拿来分享!! .Net对于远 ...
- 【AS3 Coder】任务五:Flash 2D游戏的第二春(下)
在上一节中,我们基本上已经讲完了游戏中最主要的逻辑部分,不过为了更加全面地运用Starling中的一些特性,在本节中我们将一起来看看如何实现多面板切换以及粒子效果,这两个玩意儿可是比较频繁会出现于St ...
- 116 - Unidirectional TSP(DP)
多段图的最短路问题 . 运用了非常多的技巧 :如 记录字典序最小路径 . 细节參见代码: #include<bits/stdc++.h> using namespace std; con ...
- 2017.4.19 慕课网-通过自动回复机器人学习mybatis
开发前的分析 1.技能前提 JSP JSTL EL JS/JQUERY Servlet JavaBean JDBC(后期再用mybatis,这样体会更深) MYSQL 2.需求分析和模块划分 (1)基 ...
- m 调用传参图片切换
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...