(1)Elasticsearch--单机版安装

一、简介

Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。官方客户端在Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby和许多其他语言中都是可用的。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr,也是基于Lucene。【百度百科】

二、安装ES(基于6.5.54)

1.创建用户并切换(es不支持root用户启动)
useradd elsearch 
su elsearch 
cd /home/elsearch
2.解压压缩包
tar -xvf elasticsearch-6.5.4.tar.gz
3.修改配置文件
vim /home/elsearch/elasticsearch-6.5.4/config/elasticsearch.ym

增加如下内容

network.host: 0.0.0.0 #设置ip地址,任意网络均可访问
4.启动es

编写启动脚本,进行es启动

nohup  /home/elsearch/elasticsearch-6.5.4/bin/elasticsearch >/home/elsearch/elasticsearch-6.5.4/logs/es.out &
tail -f /home/elsearch/elasticsearch-6.5.4/logs/es.out
5.验证是否启动

执行命令

curl 127.0.0.1:9200

出现下述结果即启动成功

{
  "name" : "0EcgAD6",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "YuE53cDSQwW8gHbfVEcTjA",
  "version" : {
    "number" : "6.5.4",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "d2ef93d",
    "build_date" : "2018-12-17T21:17:40.758843Z",
    "build_snapshot" : false,
    "lucene_version" : "7.5.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}
6.启动常见问题

参考博文:es启动常见错误

三、安装es-header(基于docker)

1.拉取镜像并启动
#拉取镜像
docker pull mobz/elasticsearch-head:5
#创建容器
docker create --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5
#启动容器
docker start elasticsearch-head
2.解决跨域问题
vim /home/elsearch/elasticsearch-6.5.4/config/elasticsearch.ym

添加如下内容:

http.cors.enabled: true 
http.cors.allow-origin: "*"
3.浏览器访问

ip:9100
在这里插入图片描述

4.查询数据异常问题解决

(1)异常问题
(1)Elasticsearch--单机版安装_第1张图片
(2)解决
修改es-head中vendor.js文件中的contentType

[root@centos01 elsearch]# docker ps
CONTAINER ID        IMAGE                       COMMAND                  CREATED             STATUS              PORTS                    NAMES
beadcbead946        mobz/elasticsearch-head:5   "/bin/sh -c 'grunt s…"   22 hours ago        Up About an hour    0.0.0.0:9100->9100/tcp   elasticsearch-head
[root@centos01 elsearch]# docker exec -it beadcbead946 /bin/bash
root@beadcbead946:/usr/src/app/_site# vim /usr/src/app/_site/vendor.js

将 6886、7574中行 contentType: “application/x-www-form-urlencoded” 修改为 contentType: "application/json;charset=UTF-8"吗,然后重启容器即可解决。
(1)Elasticsearch--单机版安装_第2张图片

三、安装ik分词器

分词就是指将一个文本转化成一系列单词的过程,也叫文本分析,在Elasticsearch中称之为Analysis。
举例:我是中国人 --> 我/是/中国人

1.ik分词器下载

IK分词器 Elasticsearch插件地址:ik分词器

2.安装

将下载的安装包解压至/elasticsearch/plugins/ik目录下,然后重启es即可。
(1)Elasticsearch--单机版安装_第3张图片

3.测试
POST http://10.1.84.116:9200/_analyze
// 参数
{
"analyzer": "ik_max_word",
"text": "我是中国人"
}
// 结果
{
    "tokens": [
        {
            "token": "我",
            "start_offset": 0,
            "end_offset": 1,
            "type": "CN_CHAR",
            "position": 0
        },
        {
            "token": "是",
            "start_offset": 1,
            "end_offset": 2,
            "type": "CN_CHAR",
            "position": 1
        },
        {
            "token": "中国人",
            "start_offset": 2,
            "end_offset": 5,
            "type": "CN_WORD",
            "position": 2
        },
        {
            "token": "中国",
            "start_offset": 2,
            "end_offset": 4,
            "type": "CN_WORD",
            "position": 3
        },
        {
            "token": "国人",
            "start_offset": 3,
            "end_offset": 5,
            "type": "CN_WORD",
            "position": 4
        }
    ]
}

至此,分词器安装成功

你可能感兴趣的:(#,Elasticsearch)