win10安装ElasticSearch7.x和分词插件

说明:
以下内容整理自网络,格式调整优化,更易阅读,希望能对需要的人有所帮助。
一 安装 Java环境 |
ElasticSearch使用Java开发的,依赖Java环境,安装 ElasticSearch 7.x 之前,需要先安装jdk-8。
较简单,不在赘述。
二 安装ElasticSearch |
(1)下载最新版本的ElasticSearch
ElasticSearch官网下载地址: Download Elasticsearch | Elastic ,当前最新版本为ElasticSearch-7.15.0,官网有windows版及Linux版下载,根据操作系统类型下载不同版本。

下载的压缩包:

(2) 安装ElasticSearch
解压 elasticsearch-7.15.0-windows-x86_64.zip 到安装目录,我这里安装到 D:\ProgramFiles\elasticsearch-7.15.0 ,注意 D:\ProgramFiles 中间没有空格。
解压好之后,进入bin目录,双击 elasticsearch.bat 运行,这样就ElasticSearch就运行起来了。
在浏览器地址栏里输入 localhost:9200,
(3)配置成外网可访问ES
默认配置只能本机访问,如果要外网访问ElasticSearch,需要修改config\elasticsearch.yml文件。
把network.host的值改成0.0.0.0,并去掉注释。
把cluster.initial_master_nodes: ["node-1","node-2"] 改成 cluster.initial_master_nodes: ["node-1"] 并去掉注释,为啥要去掉node-2呢,因为在前面只配置了节点名为 node-1单个节点 。
#注意冒号后面有一个空格 node.name: node-1 #这个配置默认是注释的,如果启动时提示找不到节点node-1,就配置这一句 network.host: 0.0.0.0 cluster.initial_master_nodes: ["node-1"]
允许跨域,在elasticsearch.yml文件底部增加两行配置:
#新增配置,让head插件可以访问es,注意!!!冒号后面有一个空格 http.cors.enabled: true http.cors.allow-origin: "*"
重启ElasticSearch。
设置防火墙对外开放9200端口。看到下面的状态信息,说明启动成功。

三 将ElasticSearch安装成windows服务 |
cmd 进入bin目录,即 D:\ProgramFiles\elasticsearch-7.15.0\bin 目录,
执行: elasticsearch-service.bat install
把elasticsearch做成windows服务,默认启动类型是手动,将它改成自动并启动它。

elasticsearch-service.bat 后面还可以执行下面的命令:
elasticsearch-service.bat install #安装Elasticsearch服务 elasticsearch-service.bat remove #删除已安装的Elasticsearch服务(如果启动则停止服务) elasticsearch-service.bat start #启动Elasticsearch服务(如果已安装) elasticsearch-service.bat stop #停止服务(如果启动) elasticsearch-service.bat manager #启动GUI来管理已安装的服务
四 配置分词器 |
ES默认的中文分词器是按单个汉字分割,使用起来搜索结果不太准确,在ES的分词插件中,中文分词用的比较多的是IK分词器。
下载ES对应版本的编译后的插件,解压出来,放到ES的插件目录的ik目录下(es安装目录\plugins\ik),重启ES,即可启用插件。
IK插件i源码下载地址:https://github.com/medcl/elasticsearch-analysis-ik
IK插件编译后的下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
注意:下载的ik版本一定要与elasticsearch版本对应,否则elasticsearch无法启动,如果安装的是es7.15.0,那么就下载 【elasticsearch-analysis-ik-7.15.0.zip】。

下载完成后,将【elasticsearch-analysis-ik-7.15.0.zip】解压到es安装目下的plugins目录下的ik目录下,
然后重启elasticsearch服务。


查看 ik 插件是否安装成功:
http://localhost:9200/_cat/plugins
五 安装Nodejs |
ElasticSerach head插件需要nodejs里的grunt安装,所以要先安装node及grunt。
如果不安装elasticsearch head插件,可以不用安装nodejs。
国外下载地址:https://nodejs.org/en/
国内下载地址:http://nodejs.cn/download/
(1) 下载完这后双击 node-v16.8.0-x64.msi 安装nodeJs。
![]()
在cmd窗口输入 node -v 查看nodejs版本

(2) 设置淘宝镜像,提高npm安装软件的速度。
npm config set registry https://registry.npm.taobao.org
(3)安装cnpm及设置淘宝镜像
npm install -g cnpm -registry=https://registry.npm.taobao.org
查看cnpm是否安装成功 cnpm -v

(4) 安装grunt
grunt是一个很方便的构建工具,可以进行打包压缩、测试、执行等等的工作,5.x里之后的head插件就是通过grunt启动的。因此需要安装grunt 。
cnpm install -g grunt-cli
# 查看grunt是否安装成功
grunt -version

六 安装ElasticSearch head插件 |
ElasticSearch head是ElasticSearch的一个管理插件。
ElasticSearch Head下载地址:https://github.com/mobz/elasticsearch-head
将elasticsearch head插件解压到安装目录,我这里安装到 D:\ProgramFiles\elasticsearch-head-master ,注意 D:\ProgramFiles 中间没有空格。
进入head插件解压根目录 D:\ProgramFiles\elasticsearch-head-master ,运行 npm install
启动head插件。进入head根目录,运行 npm run start 或者 grunt server 两个命令其中之一来启动head插件。
#安装head插件
cnpm install#启动head
npm run start
#或者 grunt server
head插件不能安装成windows服务,只能用命令启动。


修改ElasticSearch配置文件 D:\ProgramFiles\elasticsearch-7.15.0\config\elasticsearch.yml
在elasticsearch.yml文件底部增加两行配置:
#新增配置,让head插件可以访问es,注意!!!冒号后面有一个空格 http.cors.enabled: true http.cors.allow-origin: "*"
重启ElasticSearch,浏览器地址栏输入 http://localhost:9100,查看es管理控制台。
如果要对外访问head,要设置防火墙对外开放9100端口。

七 安装Kibana |
head插件可以提供简单的elasticsearch集群与节点管理界面,但并没有提供ES文档管理界面,这就需要借助ES UI管理工具kibana了。
下载kibana:Past Releases of Elastic Stack Software | Elastic
下载与elasticsearch对应的版本 7.15.0


下载完成后,解压【kibana-7.15.0-windows-x86_64.zip】。


修改配置文件 config/kibana.yml,修改以下配置:
(1) 允许外网访问kibana,将#server.host: "localhost" 修改为 server.host: "0.0.0.0" ,去掉前面的#号;
(2) 汉化,将#i18n.locale: "en" 改成 i18n.locale: "zh-CN",去掉前面的#号。
(3) 启用控制台,在末尾添加一句 console.enabled: true
server.host: "0.0.0.0" i18n.locale: "zh-CN" console.enabled: true
进入bin目录,打开cmd命令窗口,运行bin/kibana.bat
浏览器中输入网址打开kibana: http://localhost:5601,首先点开菜单【Dashboard】添加一个索引匹配规则 ,然后点开菜单【Discover】查看数据记录。

如何 打开elasticsearch控制台:
点击顶部的搜索输入框,就会出现下拉选项,选择【开发工具】就可以跳转到控制台,或者在搜索框里输入elasticsearch的地址【http://localhost:9200】 回车,也可以进入控制台。

下面图是控制台,在控制台里输入DSL查询语句执行增删查改操作。

内容整理自网络。
相关文章:
win10安装ElasticSearch7.x和分词插件
说明: 以下内容整理自网络,格式调整优化,更易阅读,希望能对需要的人有所帮助。 一 安装 Java环境 ElasticSearch使用Java开发的,依赖Java环境,安装 ElasticSearch 7.x 之前,需要先安装jdk-8。…...
Linux中,MySQL的用户管理
MySQL库中的表及其作用 user表 User表是MySQL中最重要的一个权限表,记录允许连接到服务器的帐号信息,里面的权限是全局级的。 db表和host表 db表和host表是MySQL数据中非常重要的权限表。db表中存储了用户对某个数据库的操作权限,决定用户…...
个人电脑网络安全 之 防浏览器和端口溢出攻击 和 权限对系统的重要性
防浏览器和端口溢出攻击 该如何防 很多人都不明白 我相信很多人只知道杀毒软件 却不知道网络防火墙 防火墙分两种 : 1、 病毒防火墙 也就是我们说的杀毒软件 2、 网络防火墙 这是用来防软件恶意通信的 使用防火墙 有两种 1、 半开式规则…...
美食聚焦 -- 仿大众点评项目技术难点总结
1 实现点赞功能显示哪些用户点赞过并安装时间顺序排序 使用sort_set 进行存储,把博客id作为key,用户id作为value,时间戳作为score 但存储成功之后还是没有成功按照时间顺序排名,因为sql语句,比如最后in(5…...
拓扑图:揭示复杂系统背后的结构与逻辑
在现代软件开发和运维中,图形化的表示方式越来越重要。拓扑图,作为一种关键的可视化工具,不仅能够帮助我们理解系统的结构和组件间的关系,还能提升系统的可维护性和可扩展性。 什么是拓扑图? 拓扑图是一种展示系统或网络中各个节点(如服务器、交换机、数据库等)及其连…...
Java面试八股之什么是spring boot starter
什么是spring boot starter Spring Boot Starter是Spring Boot项目中的一个重要概念。它是一种依赖管理机制,用于简化Maven或Gradle配置文件中的依赖项声明。Spring Boot Starter提供了一组预定义的依赖关系,这些依赖关系被封装在一个单一的包中&#x…...
探究项目未能获得ASPICE 1、2级能力的原因及改进策略
项目整体未能获得ASPICE 1、2级能力的原因可能涉及多个方面,以下是基于参考文章中的信息和可能的情境进行的分析: 1.过程成熟度不足:ASPICE(Automotive Software Process Improvement and Capability Determination)是…...
WHAT - 不同 HTTP Methods 使用场景、使用方法和可能遇到的问题
目录 前言基本介绍具体介绍前置知识:幂等和非幂等幂等操作非幂等操作幂等性和非幂等性的应用场景总结 1. GET2. POST3. PUT4. PATCH1. 确保操作是幂等的2. 使用版本控制或条件更新3. 全量更新部分属性4. 使用特定操作指令5. 幂等标识符示例代码总结 5. DELETE6. HEA…...
Pytorch使用教学4-张量的索引
1 张量的符号索引 张量也是有序序列,我们可以根据每个元素在系统内的顺序位置,来找出特定的元素,也就是索引。 1.1 一维张量的索引 一维张量由零维张量构成 一维张量索引与Python中的索引一样是是从左到右,从0开始的ÿ…...
【Git多人协作开发】同一分支下的多人协作开发模式
目录 0.前言场景 1.开发者1☞完成准备工作&协作开发 1.1创建dev分支开发 1.2拉取远程dev分支至本地 1.3查看分支情况和分支联系情况 1.4创建本地dev分支且与远程dev分支建立联系 1.5在本地dev分支上开发file.txt 1.6推送push至远程仓库 2.开发者2☞完成准备工作&…...
Vue使用FullCalendar实现日历/周历/月历
Vue使用FullCalendar实现日历/周历/月历 需求背景:项目上遇到新需求,要求实现工单以日/周/月历形式展示。而且要求不同工单根据状态显示不同颜色,一个工单内部,需要以不同颜色显示三个阶段。 效果图 日历 周历 月历 安装插件…...
社交圈子聊天交友系统搭建社交app开发:陌生交友发布动态圈子单聊打招呼群聊app介绍
系统概述 社交圈子部天交友系统是一个集成即时通讯、社区互动、用户管理等功能的在线社交平台。它支持用户创建个人资料,加入兴趣围子,通过文字、图片、语音、视频等多种方式进行交流,满足用户在不同场景下的社交需求 核心功能 -,…...
【微信小程序实战教程】之微信小程序原生开发详解
微信小程序原生开发详解 微信小程序的更新迭代非常频繁,几乎每个月都会有新版本发布,这就会让初学者感觉到学习的压力和难度。其实,我们小程序的每次版本迭代都是在现有小程序架构基础之上进行更新的,如果想要学好小程序开发技术&…...
PHP身份证实名认证接口集成守护电商购物
在这个万物互联的世界里,网购已成为日常生活中不可或缺的一部分。然而,随着线上交易的增加,如何保护消费者和商家免受欺诈,确保每一笔交易的安全,成了亟待解决的难题。这时,身份证实名认证接口应运而生&…...
为什么有了MAC还需要IP?
目录 MAC地址(Media Access Control Address)IP地址(Internet Protocol Address)为什么需要两者? IP地址和MAC地址在网络通信中扮演着不同的角色,它们各自有独特的功能和用途。下面是它们的主要区别和为什么…...
SpringBoot中如何使用RabbitMq
一,RabbitMQ简介和基本概念 RabbitMQ 是一个开源的消息中间件,基于 AMQP(高级消息队列协议)实现。 它由 Erlang 语言开发,并且支持多种编程语言,包括 Java、Python、Ruby、PHP 和 C# 等, 下载…...
LangChain自定义Embedding封装 之 ERNIE Bot
LangChain自定义Embedding封装 之 ERNIE Bot 百度飞浆平台的 ERNIE Bot 导入下面方法 和 环境 ,即可验证 embedding ERNIE_Bot_embedding() class ERNIE_Bot_embedding(BaseModel, Embeddings):client: Anyroot_validator()def validate_environment(cls, value…...
Git 安装教程
1、登录git 官方网站:https://git-scm.com/ 点击左边的 Downloads 或者 右边标识的下载标志,它根据电脑操作系统自动匹配版本 Downloads for Windows 2、以 windows 为例下载对应版本 网络有时可能不大好,阿里镜像下载超快。 下载好以后&a…...
Lua 类管理器
Lua 类管理器 -- ***** Class Manager 类管理*****‘local ClassManager {}local this ClassManagerfunction ClassManager.Class(className, ...)print(ClassManager::Class)--print(className)-- 构建类local cls {__className className}--print(cls)-- 父类集合local …...
实现领域驱动设计(DDD)系列详解:领域模型的持久化
领域驱动设计主要通过限界上下文应对复杂度,它是绑定业务架构、应用架构和数据架构的关键架构单元。设计由领域而非数据驱动,且为了保证定义了领域模型的应用架构和定义了数据模型的数据架构的变化方向相同,就应该在领域建模阶段率先定义领域…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
uniapp 字符包含的相关方法
在uniapp中,如果你想检查一个字符串是否包含另一个子字符串,你可以使用JavaScript中的includes()方法或者indexOf()方法。这两种方法都可以达到目的,但它们在处理方式和返回值上有所不同。 使用includes()方法 includes()方法用于判断一个字…...
苹果AI眼镜:从“工具”到“社交姿态”的范式革命——重新定义AI交互入口的未来机会
在2025年的AI硬件浪潮中,苹果AI眼镜(Apple Glasses)正在引发一场关于“人机交互形态”的深度思考。它并非简单地替代AirPods或Apple Watch,而是开辟了一个全新的、日常可接受的AI入口。其核心价值不在于功能的堆叠,而在于如何通过形态设计打破社交壁垒,成为用户“全天佩戴…...
【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error
在前端开发中,JavaScript 异常是不可避免的。随着现代前端应用越来越多地使用异步操作(如 Promise、async/await 等),开发者常常会遇到 Uncaught (in promise) error 错误。这个错误是由于未正确处理 Promise 的拒绝(r…...
【SpringBoot自动化部署】
SpringBoot自动化部署方法 使用Jenkins进行持续集成与部署 Jenkins是最常用的自动化部署工具之一,能够实现代码拉取、构建、测试和部署的全流程自动化。 配置Jenkins任务时,需要添加Git仓库地址和凭证,设置构建触发器(如GitHub…...
深入浅出WebGL:在浏览器中解锁3D世界的魔法钥匙
WebGL:在浏览器中解锁3D世界的魔法钥匙 引言:网页的边界正在消失 在数字化浪潮的推动下,网页早已不再是静态信息的展示窗口。如今,我们可以在浏览器中体验逼真的3D游戏、交互式数据可视化、虚拟实验室,甚至沉浸式的V…...
java 局域网 rtsp 取流 WebSocket 推送到前端显示 低延迟
众所周知 摄像头取流推流显示前端延迟大 传统方法是服务器取摄像头的rtsp流 然后客户端连服务器 中转多了,延迟一定不小。 假设相机没有专网 公网 1相机自带推流 直接推送到云服务器 然后客户端拉去 2相机只有rtsp ,边缘服务器拉流推送到云服务器 …...
[特殊字符] Spring Boot底层原理深度解析与高级面试题精析
一、Spring Boot底层原理详解 Spring Boot的核心设计哲学是约定优于配置和自动装配,通过简化传统Spring应用的初始化和配置流程,显著提升开发效率。其底层原理可拆解为以下核心机制: 自动装配(Auto-Configuration) 核…...
