Elasticsearch安装

ElasticSearch笔记

1 Docker安装

1.1 安装ElasticSearch

docker run -di --hostname elasticsearch  --name elasticsearch --restart=always -p 9200:9200 -p 9300:9300 -p 5601:5601 -e "discovery.type=single-node" -e http.cors.enabled=true -e http.cors.allow-origin="*" -e http.cors.allow-headers=X-Requested-With,X-Auth-Token,Content-Type,Content-Length,Authorization -e http.cors.allow-credentials=true elasticsearch:7.4.2

restart相关参数如下:

选项 作用
–restart=no 不自动重启容器. (默认)
–restart=on-failure 容器发生error而退出(容器退出状态不为0)重启容器
on-failure:3 在容器非正常退出时重启容器,最多重启3次
–restart=unless-stopped 在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器
–restart=always 在容器已经stop掉或Docker stoped/restarted的时候才重启容器

如果已经启动的容器项目,则使用update更新:

docker update --restart=always 容器名/ID

1.2 安装Kibana

docker run -di --name kibana -e ELASTICSEARCH_URL=http://127.0.0.1:9200 --network=container:elasticsearch  kibana:7.4.2
# Head 插件(了解)
docker run -d --name es_admin -p 9100:9100 mobz/elasticsearch-head:5

输入地址访问:http://192.168.200.129:5601

1.3 安装IK分词器

1、进入容器

docker exec -it elasticsearch /bin/bash

2、安装ik插件(在线较慢)

# 在线下载并安装
./bin/elasticsearch-plugin  install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.4.2/elasticsearch-analysis-ik-7.4.2.zip

#退出
exit
#重启容器
docker restart elasticsearch

2、离线安装ik插件(推荐)

准备上传ik插件的压缩包

  1. 将压缩包,复制到电脑中,不带中文的目录下。
    在这里插入图片描述
  2. 在CRT中,按alt+p,进入上传界面

在这里插入图片描述
3. 进去到刚才上传压缩包的文件夹,D:/

lcd d:/

  1. 上传IK压缩包

    put elasticsearch-analysis-ik-7.4.2.zip

安装:

# 1、解压elasticsearch-analysis-ik-7.4.2.zip
mkdir ik

mv elasticsearch-analysis-ik-7.4.2.zip ik

cd ik
unzip elasticsearch-analysis-ik-7.4.2.zip

cd ..

# 2、把解压好的文件夹上传虚拟机
docker cp ik/ elasticsearch:/usr/share/elasticsearch/plugins
# 3、把文件夹复制到es容器 在和ik同级目录下运行

# 8、重启容器
docker restart elasticsearch

# 查看elasticSearch启动日志
docker logs -f elasticsearch

在这里插入图片描述

# 重启 Kibana
docker restart kibana



2 使用本地镜像包安装

2.1 安装ES

1、上传hf_elasticsearch.tar到 Linux服务上

2、将当前的tar包加载到本地的镜像库中

docker load -i hf_elasticsearch.tar

3、创建容器(已安装完成IK分词器)

docker run -di --hostname elasticsearch  --name elasticsearch --restart=always -p 9200:9200 -p 9300:9300 -p 5601:5601 -e "discovery.type=single-node" -e http.cors.enabled=true -e http.cors.allow-origin="*" -e http.cors.allow-headers=X-Requested-With,X-Auth-Token,Content-Type,Content-Length,Authorization -e http.cors.allow-credentials=true hf_elasticsearch:7.4.2

4、浏览器访问测试http://192.168.200.129:9200/ (需要等待一会)

2.2 安装Kibana

1、上传hf_kibana.tar到 Linux服务上

2、将当前的tar包加载到本地的镜像库中

docker load -i hf_kibana.tar

3、创建容器

docker run -di --name kibana -e ELASTICSEARCH_URL=http://127.0.0.1:9200 --network=container:elasticsearch  hf_kibana:7.4.2

4、4、浏览器访问测试http://192.168.200.129:5601/ (需要等待一会)

2 ES基本操作

文档添加失败执行

curl -XPUT -H "Content-Type: application/json" http://127.0.0.1:9200/_all/_settings -d '{"index.blocks.read_only_allow_delete": null}'
GET _search
{
  "query": {
    "match_all": {}
  }
}
#添加索引
PUT itheima

#查询单个索引
GET itheima

#查看所有索引
GET _all

#删除索引
DELETE itheima

#关闭索引
POST itheima/_close

#打开索引
POST itheima/_open

PUT person

#添加索引
PUT person/_mapping
{
  "properties":{
    "name":{
      "type":"text"
    },
    "age":{
      "type":"integer"
    }
  }
}

#查询索引
GET /person/_mapping

#创建索引并添加映射
PUT /itcast
{
  "mappings": {
    "properties":{
    "name":{
      "type":"text"
    },
    "age":{
      "type":"integer"
    }
  }
  }
}

GET /itcast/_mapping

#添加文档,指向id
PUT person/_doc/1
{
  "name":"张三",
  "age":20,
  "address":"北京海淀区"
}

#查询指定id的文档
GET person/_doc/1

#添加文档,不指定id
POST person/_doc
{
  "name":"李四",
  "age":21,
  "address":"北京海淀区"
}

#查询所有的文档
GET person/_search

#删除指定id文档
DELETE person/_doc/1

#查询
GET person/_search
{
  "query": {
    "term": {
      "name": {
        "value": "李四"
      }
    }
  }
}

GET person/_search
{
  "query": {
    "match": {
      "address": "北京"
    }
  }
}



GET /_analyze
{
  "analyzer": "ik_max_word",
  "text": "乒乓球明年总冠军"
}

你可能感兴趣的:(JavaEE开发必备工具的使用)