1、安装java环境
先查看环境是否安装
yum list installed |grep java
如果存在自带的环境则卸载
yum -y remove java-1.7.0-openjdk*
查看安装包
yum -y list java*
安装java1.8
yum -y install java-1.8.0-openjdk*
2、安装ES
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.2.tar.gztar -xvf elasticsearch-6.4.2.tar.gzcd elasticsearch-6.4.2
如果需要则设置内存 vim config/jvm.options
默认为: -Xms1g默认为: -Xmx1g
添加用户
//添加用户组 elsearch groupadd elsearch //添加用户 elsearch 密码为 elasticsearch 到用户组 elsearch useradd elsearch -g elsearch -p elasticsearch//将elsearch安装目录授权给 用户组:用户 chown -R elsearch:elsearch ../elasticsearch-6.4.2
切换用户并启动ES
su elsearchcd /usr/local/elasticsearch-6.4.2bin/elasticsearch
如果第一次启动没问题,可以bin/elasticsearch -d 后台启动
3、运行测试
curl -X GET localhost:9200
出现
{ "name" : "qBx0xRG", "cluster_name" : "elasticsearch", "cluster_uuid" : "o-GjxaRZT_qHVj-V3DRxWw", "version" : { "number" : "6.4.2", "build_flavor" : "default", "build_type" : "tar", "build_hash" : "04711c2", "build_date" : "2018-09-26T13:34:09.098244Z", "build_snapshot" : false, "lucene_version" : "7.4.0", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" }, "tagline" : "You Know, for Search" }
表示成功
4、安装Ik中文分词插件
cd elasticsearch-6.4.2
在线安装:
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.4.2/elasticsearch-analysis-ik-6.4.2.zip
离线安装:1、下载https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.4.2/elasticsearch-analysis-ik-6.4.2.zip2、在elasticsearch-6.4.2/plugin目录创建ik目录,将zip文件传进去3、解压zip文件4、重启elasticsearch
bin/elasticsearch-plugin list //查看ik插件是否安装成功 看到analysis-ik 则为成功
5、常用方法 创建索引
curl -XPUT http://localhost:9200/test_index
查看索引
curl http://localhost:9200/test_index?pretty
添加表头
curl -H'Content-Type: application/json' -XPUT http://localhost:9200/test_index/_mapping/_doc?pretty -d'{ "properties": { "title": { "type": "text", "analyzer": "ik_smart" }, "description": { "type": "text", "analyzer": "ik_smart" }, "price": { "type": "scaled_float", "scaling_factor": 100 } } }'
创建索引时需制定analyzer与search_analyzer为ik_max_word,中文分词 这里需要注意的是 analyzer, IK插件目前只支持两种: ik_max_word 和ik_smart, ik_max_word: 会将文本做最细粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌”,会穷尽各种可能的组合; ik_smart : 会做最粗粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,国歌”。
添加数据
curl -H'Content-Type: application/json' -XPUT http://localhost:9200/test_index/_doc/1?pretty -d'{ "title": "iPhone X", "description": "新品到货", "price": 8848 }'