Windows安装Elasticsearch8.x保姆级教程

Elasticsearch

下载安装

  1. 下载:点击https://www.elastic.co/cn/downloads/elasticsearch --> 点击View past releases -->找到8.11.1版本的ES --->点击下载---目前最新版的Spring Data ES最高支持8.11.1版本

elasticsearchJDK版本:https://www.elastic.co/cn/support/matrix#matrix_jvm

  1. 解压:解压下载的压缩包并修改为elasticsearch8111

普通配置

  1. 进入:WIN键搜索并点击 编辑系统环境变量 --> 点击环境变量 --->点击系统变量下新建按钮

参考:https://blog.csdn.net/lanlinjnc/article/details/135845689

  1. 输入:变量名输入ES_HOME,变量值为ES的安装目录(bin目录的上级)
  2. 添加:双击PATH变量--->点击新建—>输入%ES_HOME%\bin

注:这样配置了之后,就不需要先以在终端打开的方式打开bin目录,然后才能输入命令了

  1. 输入:变量名输入ES_JAVA_HOME,变量值为JDK目录的路径(与bin目录同级)
  2. 乱码:进入config目录--->打开jvm.options 文件—>末尾添加-Dfile.encoding=GBK

注:-Dfile.encoding=GBK解决启动日志乱码问题

  1. 配置:进入config目录--->打开elasticsearch.yml 文件,做如下修改
# 设置集群的名字
cluster.name: es# 设置主节点名字
node.name: esNodeOne#设置索引数据的存储路径
path.data: ./data    #换成自己的路径
#设置日志文件的存储路径
path.logs: ./logs    #换成自己的路径# 设置ES监听地址,默认为192.168.0.1; 0.0.0.0: 任意机器都可访问
network.host: 0.0.0.0#设置对外服务的http端口,默认为9200
http.port: 9200

添加分词

  1. ik分词器:中文分词器,可根据定义的字典对域进行分词,并支持用户配置自己的字典,是一个插件包,可以用插件的方式将它接入到ES

ElasticSearch 内置了很多分词器,但这些分词器对中文并不友好

  1. 下载ikhttps://github.com/infinilabs/analysis-ik/releases?page=1

选择与下载的es版本一致的下载

  1. 解压改名:解压下载的安装包,然后将解压所得的安装包改成ik

  2. 添加目录:将ik目录移入plugins目录

  3. 安装验证: 终端输入命令elasticsearch-plugin list

  4. es中分词器主要有两种情况会被使用:
    ○ 插入文档时:将text类型的字段做分词然后插入倒排索引
    ○ 查询时:先对要查询的text类型的输入做分词,再去倒排索引搜索

  5. es中分词器的选择策略:
    ○ 插入文档/索引时:会检查字段是否定义analyzer属性,优先使用定义的,否则使用es预设的
    ○ 查询时:会检查被搜索的字段是否定义了search_analyzer,优先使用定义的,否则使用es预设的
    analyzer search_analyzer 是作用到字段上面的,每个字段可以设置不同的索引分词器和查询分词器

  6. 设置ES使用:ik分词器包括ik_smart最少切分和ik_max_word最细切分这两种模式,用于analyzer属性和search_analyzer属性

## 创建一个 text_index 索引
PUT /test_index## 设置test_index索引的mapping
## 将 索引中的content字段设置为 
## 插入数据建立索引时使用 ik_max_word 模式进行分词
## 对该字段进行搜索时,使用 ik_smart模式进行搜索词的分词## 两种分词器使用的最佳实践是:索引时用ik_max_word,在搜索时用ik_smart。
## 即:索引时最大化的将文章内容分词,搜索时更精确的搜索到想要的结果。POST /test_index/_mapping
{"properties":{"content":{"type":"text","analyzer":"ik_max_word","search_analyzer":"ik_smart"}}
}
  1. Javahttps://blog.csdn.net/weixin_44107140/article/details/131750412
  2. 资源:https://www.bilibili.com/video/BV1b8411Z7w5/?p=8

服务配置

  1. 安装:终端输入命令elasticsearch-service.bat install``---安装 Elasticsearch 服务
    但先运行服务,安装命令执行完成后,到服务中就可以看到安装好的 Elasticsearch 服务

  2. 卸载:elasticsearch-service.bat remove``---删除安装的Elasticsearch服务,若启动则停止服务

  3. 启动:elasticsearch-service.bat start``---启动Elasticsearch服务,如果已安装

  4. 停止:elasticsearch-service.bat stop``---停止Elasticsearch服务,如果启动

  5. 管理:elasticsearch-service.bat manager``---启动GUI来管理已安装的服务

运行服务

  1. 验证:终端输入命令elasticsearch.bat,如下图(记录了密码等信息)则成功

默认账号:用户名elastic,密码自行修改

CA证书密钥信息:d022bf6a91be10e6215eb0540491b5be6d899919a65091b69c9d3f40a130822e

  1. 随机生成密码:终端输入命令elasticsearch-reset-password -u elastic``---一定要先运行ES

注:New value字段的值就是新的密码,用于忘记密码的情况

  1. 指定账号密码:终端输入命令elasticsearch-reset-password --username elastic -i``---一定要先运行ES
    注:密码至少要六个字符,新密码liuxiansheng
  2. 访问:浏览器输入https://localhost:9200/,账号就是之前提到的,如下则启动成功

安全配置

  1. 配置:进入config目录--->打开elasticsearch.yml 文件---运行服务自动生成下列配置
  2. xpack.security.enabled:
    ● 默认true:必须使用账号连接ES
    ● 若为false:必须使用http://localhost:9200/访问ES服务+启动Kibana服务会失败+使用Spring Data ESelasticsearch-java依赖,不需要使用账号连接,但必须使用HTTP连接
  3. xpack.security.http.ssl.enabled
    ● 默认true:必须使用https://localhost:9200/访问ES服务无论使用Spring Data ES还是elasticsearch-java依赖,都需要使用账号连接+必须使用HTTPS连接
    ● 若为false:必须使用http://localhost:9200/访问ES服务+启动Kibana服务会失败+使用Spring Data ESelasticsearch-java依赖,都需要使用账号连接,但必须使用HTTP连接
# 设置是否开启xpack的安全功能,默认true/开启---以xpack开头的配置项都会开启
xpack.security.enabled: false
# 设置是否开启节点的安全注册功能---ChatGPT询问xpack.security.enrollment
xpack.security.enrollment.enabled: true# 配置X-Pack安全功能中 与 HTTP 通信相关的 SSL 设置
xpack.security.http.ssl:# 设置是否开启 HTTP API 客户端连接加密功能---如 Kibana  enabled: truekeystore.path: certs/http.p12# Enable encryption and mutual authentication between cluster nodes
xpack.security.transport.ssl:# 设置是否启用集群节点之间的加密和相互身份验证功能enabled: trueverification_mode: certificatekeystore.path: certs/transport.p12truststore.path: certs/transport.p12`

添加用户

  1. 添加:终端输入elasticsearch-users useradd liu,设置密码为liuxiansheng``---必须先运行ES

elasticsearch不能使用root用户启动,所以我们创建一个新的用户

  1. 权限:终端输入elasticsearch-users roles -a superuser liu,设置为超级管理员
  2. 权限:终端输入elasticsearch-users roles -a kibana_system liu,设置为kibana用户

界面可视

  1. 下载:点击https://github.com/1340691923/ElasticView/releases/tag/v1.8.7``-->选择win

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/745389.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

openstack迁移虚拟机--来自gpt

在OpenStack环境中,虚拟机的迁移可以通过多种方式实现,包括实时迁移(Live Migration)和冷迁移(Cold Migration) 实时迁移(Live Migration) 实时迁移是在虚拟机运行的同时将其迁移到…

某赛通电子文档安全管理系统 DecryptApplication 任意文件读取漏洞(2024年3月发布)

漏洞简介 某赛通电子文档安全管理系统 DecryptApplication 接口处任意文件读取漏洞,未经身份验证的攻击者利用此漏洞获取系统内部敏感文件信息,导致系统处于极不安全的状态。 漏洞等级高危影响版本*漏洞类型任意文件读取影响范围>1W 产品简介 …

数据结构 day4 链表

1: 2: 3: 4: 5: 6:

C#,动态规划问题中基于单词搜索树(Trie Tree)的单词断句分词( Word Breaker)算法与源代码

1 分词 分词是自然语言处理的基础,分词准确度直接决定了后面的词性标注、句法分析、词向量以及文本分析的质量。英文语句使用空格将单词进行分隔,除了某些特定词,如how many,New York等外,大部分情况下不需要考虑分词问题。但有些情况下,没有空格,则需要好的分词算法。…

Python中的装饰器是什么?给出一个简单的装饰器例子。

Python中的装饰器详解及示例 装饰器(Decorators)是Python中一个非常强大且有用的特性,它允许程序员在不修改原有函数或类的基础上,增加额外的功能或修改其行为。装饰器本质上是一个可调用对象(通常是一个函数&#xf…

kkview: Todesk远程控制怎么断开

随着科技的发展,远程控制软件越来越受人们的欢迎,其中Todesk是一款广受欢迎的远程控制工具。然而,在使用过程中,我们有时需要断开远程连接,本文将详细指导大家如何进行这一操作。 KKView远程控制专家 今年爆火的KKVi…

Spring MVC 路径参数及JSON参数接收

1. 路径参数接收 路径传递参数是一种在 URL 路径中传递参数的方式。在 RESTful 的 Web 应用程序中,经常使用路径传递参数来表示资源的唯一标识符或更复杂的表示方式。而 Spring MVC 框架提供了 PathVariable 注解来处理路径传递参数。 PathVariable 注解允许将 UR…

CSS 3

CSS3现状 在CSS2的基础上新增(扩展)样式移动端支持优于PC端不断改进中应用相对广泛 1.CSS3属性选择器 选择符简介E[att]选择具有att属性的E元素E[att"val"]选择具有att属性且属性值等于val的E元素E[att^"val"]匹配具有att属性、且具有以val开头的E元素E…

AJAX 01 AJAX 概念和 axios 使用

2.27 AJAX 学习 AJAX 1 入门01 AJAX 概念和 axios 使用axios 使用案例 02 认识 URLURL组成 03 URL 查询参数axios-查询参数案例 :地区查询 04 常用请求方法和数据提交axios 请求配置axios 错误处理 05 HTTP协议-报文① 请求报文作用:错误排查…

数据结构:堆

堆的概念 1.堆是一个完全二叉树 2.小堆(任何一个父亲<孩子),大堆(任何一个父亲>孩子) 堆的结构 物理结构:数组 逻辑结构:二叉树 #pragma once #include<assert.h> #include<iostream> typedef int HPDataType; typedef struct Heap {HPDataType* _a;int…

使用 Jenkins 管道在 Docker Hub 中构建 Docker 镜像

Jenkins Pipeline 是一个强大的工具&#xff0c;可以自动执行部署。在各个阶段之间拆分的灵活和自定义操作是尝试此功能的一个很好的理由。 构建您自己的 Docker 镜像并将其上传到 Docker Hub 以保持存储库更新是了解 Jenkins Pipeline 如何改进您的工作方式的一个很好的示例。…

产品推荐 - 基于Xilinx Kintex-7 XC7K160T/325T/410T打造的水星Mercury+ KX2核心板

水星Mercury KX2核心板 水星Mercury KX2核心板提供高性价比的Xilinx Kintex-7 28nm FPGA和常见的接口&#xff0c;如USB 2.0、PCIe Gen2和千兆以太网。 KX1有强大的FPGA和标准接口、很多具备LVDS能力的I/O、大容量DDR3 SDRAM、很多高速DSP slices&#xff0c;它既适合高端数字信…

第五十八回 吴用赚金铃吊挂 宋江闹西岳华山-飞桨图像分割套件PaddleSeg初探

鲁智深被贺太守抓住&#xff0c;押入死牢。武松得信后&#xff0c;正想回梁山报信&#xff0c;正好戴宗来了&#xff0c;就请戴宗赶快回梁山搬救兵。宋江说兄弟有难&#xff0c;怎能不救&#xff1f; 于是带了十六个头领来到少华山。 因为华州城池厚壮&#xff0c;宋江等无计可…

【开源】SpringBoot框架实验室耗材管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 耗材档案模块2.2 耗材入库模块2.3 耗材出库模块2.4 耗材申请模块2.5 耗材审核模块 三、系统展示四、核心代码4.1 查询耗材品类4.2 查询资产出库清单4.3 资产出库4.4 查询入库单4.5 资产入库 五、免责说明 一、摘要 1.1…

JavaEE之多线程(创建线程的五种写法)详解

&#x1f63d;博主CSDN主页: 小源_&#x1f63d; &#x1f58b;️个人专栏: JavaEE &#x1f600;努力追逐大佬们的步伐~ 目录 1. 前言 2. 操作系统"内核" 3. 创建线程的五种写法 (我们重点要掌握最后一种写法!!) 3.1 继承 Thread, 重写 run 3. 2 实现 Runnabl…

电脑坏了去维修,第一家报价800,第三家说报废!

这篇文章主要讲的是修理坏掉的电脑。 第一家报价300&#xff0c;第二家报价800&#xff0c;第三家说要报废&#xff01; 相信很多朋友对于修电脑坏了要多少钱有很多困惑&#xff0c;修电脑坏了要多少钱&#xff0c;到底去正规售后服务还是去非品牌店维修一台坏掉的电脑。 今天高…

Jmeter扩展---自定义取样器

简介 Jmeter已经内置了各种协议的取样器&#xff0c;已经能满足常用的性能压测需求。且在前面一章Jmeter扩展开发--自定义java取样器-CSDN博客中也有关于Java取样器的扩展开发&#xff0c;不过有时候我们期望能定制自己的取样器和界面。为此&#xff0c;需要对Jmeter做扩展&am…

项目示例 - 4.配置中心 - 1.Nacos

项目示例 - 4.配置中心 - 1.Nacos 关联知识&#xff1a; 分布式微服务 - 4.配置中心 - 2.Nacos 内容提要&#xff1a; 基本使用 基本使用 建Module&#xff1a;微服务起名为nacos-config改pom&#xff1a;引入以下依赖 <dependencies><!--Nacos的配置管理-->…

界面控件DevExpress ASP.NET Scheduler - 助力快速交付个人信息管理系统(下)

DevExpress ASP. NET Scheduler组件能完全复制Microsoft Outlook Scheduler的样式和功能&#xff0c;具有日、周、月和时间轴视图&#xff0c;并包括内置的打印支持&#xff0c;因此用户可以在尽可能短的时间内交付全功能的个人信息管理系统。在上文中&#xff08;点击这里回顾…

Gemma中RoPE代码详细讲解

最近在看Gemma代码感觉比LLama的代码看的方便点&#xff0c; 看到RoPE代码跟常规的方式不太一样&#xff08;也不算常规&#xff0c;就是我理解的方式&#xff09;&#xff0c;特此记录一下。我的RoPE入门代码参考&#xff1a;Rotary Position Embedding (RoPE, 旋转式位置编码…