1.安装elasticsearch 之前要先安装java8:  参考https://www.elastic.co/guide/en/elasticsearch/reference/current/zip-targz.html#install-targz
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.2.tar.gz
sha1sum elasticsearch-5.5.2.tar.gz
tar -xzf elasticsearch-5.5.2.tar.gz
cd elasticsearch-5.5.2/ 
2.启动elasticsearch:
进入elasticsearch目录: ./bin/elasticsearch -d 后台执行ps aux|grep elasticsearch可以查看是否启动

3.查看elasticsearch状态

curl -XGET localhost:9200
{"status" : 200,"name" : "She-Venom","cluster_name" : "elasticsearch","version" : {"number" : "1.7.2","build_hash" : "e43676b1385b8125d647f593f7202acbd816e8ec","build_timestamp" : "2015-09-14T09:49:53Z","build_snapshot" : false,"lucene_version" : "4.10.4"},"tagline" : "You Know, for Search"}

GET /

{
  "name" : "Cp8oag6",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "AT69_T_DTp-1qgIJlatQqA",
  "version" : {
    "number" : "5.5.2",
    "build_hash" : "f27399d",
    "build_date" : "2016-03-30T09:51:41.449Z",
    "build_snapshot" : false,
    "lucene_version" : "6.5.1"
  },
  "tagline" : "You Know, for Search"
}

rails中使用searchkick

1.添加gem

gem 'searchkick'

2.配置model

class Product < ActiveRecord::Base
  searchkick
end

3.reindex

rake searchkick:reindex:all  或 单独对某一个model
rake searchkick:reindex CLASS=your_model_class_name

4.测试查询

测试时使用准确查询

 @lessons = Lesson.search params[:search],  fields: [{name: :exact}]

  

demo:https://www.driftingruby.com/episodes/searchkick-and-elasticsearch

  http://billhung.logdown.com/posts/393386

tutorial:http://www.munocreative.com/nerd-notes/tutor-portal

api:http://www.rubydoc.info/gems/searchkick/1.3.1

参考文档:https://stackoverflow.com/questions/25052973/rails-elasticsearch-searchkick 

常见错误

1Connection refused - connect(2) for "localhost" port 9200)

表结构改变一定要在启动elasticsearch的情况下,重新执行rake searchkick:reindex CLASS=your_model_class_name,再对这个model进行操作(比如添加数据等)

2启动elastic  Could not find any executable java binary. Please install java in your PATH or set JAVA_HOME

如果在服务器中新安装了java,要重新启动一下

3 There is insufficient memory for the Java Runtime Environment to continue.

修改elasticksearch/config/jvm.options,将xms 和 xmx设置教小一些

-Xms512m
-Xmx512m

rails elasticsearch searchkick用法的更多相关文章

  1. Elasticsearch SQL用法详解

    Elasticsearch SQL用法详解  mp.weixin.qq.com 本文详细介绍了不同版本中Elasticsearch SQL的使用方法,总结了实际中常用的方法和操作,并给出了几个具体例子 ...

  2. Elasticsearch match_phrase用法

    目前有用到的用法如下: post /index_name/_search { "query" : { "match_phrase": { "nickn ...

  3. Elasticsearch常见用法-入门

    前台启动 默认是只有本地可以访问 ./bin/elasticsearch 远程访问 修改elasticsearch.yml,把network.host(注意配置文件格式不是以 # 开头的要空一格, : ...

  4. Elasticsearch基本用法(2)--Spring Data Elasticsearch

    Spring Data Elasticsearch是Spring Data项目下的一个子模块. 查看 Spring Data的官网:http://projects.spring.io/spring-d ...

  5. Elasticsearch基本用法(1)--原生操作

    2.2.创建索引 2.2.1.语法 创建索引的请求格式: 请求方式:PUT 请求路径:/索引库名 请求参数:json格式: { "settings": { "number ...

  6. Elasticsearch常见用法-分布式集群

    集群内部工作方式 Elasticsearch用于构建高可用和可扩展的系统.扩展的方式可以是购买更好的服务器(纵向扩展(vertical scale or scaling up))或者购买更多的服务器( ...

  7. ElasticSearch基本用法

    最大的特点: 1. 数据库的 database, 就是  index 2. 数据库的 table,  就是 tag 3. 不要使用browser, 使用curl来进行客户端操作.  否则会出现 jav ...

  8. elasticsearch 基本用法

    最大的特点: 1. 数据库的 database, 就是  index 2. 数据库的 table,  就是 tag 3. 不要使用browser, 使用curl来进行客户端操作.  否则会出现 jav ...

  9. ElasticSearch使用spring-data-elasticSearch的用法

    spring-data-Elasticsearch 使用之前,必须先确定版本,elasticsearch 对版本的要求比较高. spring和elasticsearch有两种链接方式,一种是用TCP协 ...

随机推荐

  1. 关于java读取文件IO流学习总结(一)

    IO流的分类: 1.根据流的数据对象来分: 高端流:所有的内存中的流都是高端流,比如:InputStreamReader 低端流:所有的外界设备中的流都是低端流,比如InputStream,Outpu ...

  2. linux文件夹作用

    linux下的文件结构,看看每个文件夹都是干吗用的/bin 二进制可执行命令 /dev 设备特殊文件 /etc 系统管理和配置文件 /etc/rc.d 启动的配置文件和脚本 /home 用户主目录的基 ...

  3. 看 nova

    本节重点介绍 nova-scheduler 的调度机制和实现方法:即解决如何选择在哪个计算节点上启动 instance 的问题. 创建 Instance 时,用户会提出资源需求,例如 CPU.内存.磁 ...

  4. Python入门--7--处理数据时学习到的东西

    一.数据导入(这里使用的是pands包) import pands as pd wenjian = pd.read_csv('路径') 二.数据变换 print wenjian.head()    # ...

  5. 数字IC设计入门必备——VIM自定义模板调用与VCS基本仿真操作示例

    一.前言 毕业论文答辩结束,闲下来写篇文章.芯片研发人员都在Linux系统下借助各种EDA工具和代码语言完成工作,因此提高代码开发效率,熟练运用开发工具是十分必要的.本文讲述VIM编辑神器的veril ...

  6. Head first python前六章小结

    看这本Head first python已经有十几天了,到第七章开始讲Web开发.移动应用开发,后半年我主要是想往后端的方向发展,所以这本书暂时告一段落.这篇博客没有太多的注释,主要是内容比较简单,只 ...

  7. 中国剩余定理 & 欧拉函数 & 莫比乌斯反演 & 狄利克雷卷积 & 杜教筛

    ssplaysecond的博客(请使用VPN访问): 中国剩余定理: https://ssplaysecond.blogspot.jp/2017/04/blog-post_6.html 欧拉函数: h ...

  8. BZOJ3674 可持久化并査集

    @(BZOJ)[可持久化并査集] Description n个集合 m个操作 操作: 1 a b 合并a,b所在集合 2 k 回到第k次操作之后的状态(查询算作操作) 3 a b 询问a,b是否属于同 ...

  9. 33.Search in sorted Array

    /* * 33.Search in sorted Array * 2016-4-19 by Mingyang * 我自己写的代码,开始没有考虑[3,1]取1得情况,所以现在需要额外的加一个部分来 * ...

  10. Camtasia Studio录制屏幕字迹不清晰的原因

    Camtasia Studio这是一个很优秀的屏幕录像软件,功能强大且录制效果出色,支持众多格式输出: 之前一直用它录制视频的都很正常,但这次换系统后再重新安装后录制视频时,发现输出的视频画质不佳,文 ...