ElasticSearch学习01——Windows10环境下ES安装经验与踩到的坑

news2024/11/16 15:31:58

由于对ES基本概念和历史演进在网上随处可查,所以本文在此不做赘述.随意本文直接讲述如何安装使用ES

1.安装JDK

​ ElasticSearch是基于lucence开发的,也就是运行需要java jdk支持。所以要先安装JAVA环境。由于ElasticSearch 5.x 往后依赖于JDK 1.8的,所以最好安装JDK1.8及以上版本.具体安装方法可以参考如下连接:

环境连接
windowsJava JDK下载安装及环境配置超详细图文教程
ubuntuUbuntu 20.04系统下JDK的安装与配置

2.安装ElasticSearch

1.ElasticSearch下载地址:
​ https://www.elastic.co/cn/downloads/elasticsearch
在这里插入图片描述
2.下载并解压
在这里插入图片描述
3.进入bin目录下,双击执行elasticsearch.bat
在这里插入图片描述
​ 双击elasticsearch.bat后出现下图报错,说明我们安装的es和本机的jdk版本不兼容.
在这里插入图片描述
​ 网址https://www.elastic.co/cn/support/matrix#matrix_jvm网址中展示了es和jdk的对应版本,观察版本对应表可以发现,jdk1.8的环境下可以es8.0以下的版本,es8.0以上的版本要求jdk最低为17.
在这里插入图片描述
在这里插入图片描述
​ 由于本地环境为jdk1.8,所以本文安装的es的版本为7.17.11.具体步骤复刻步骤1和步骤2.下载解压7.17.11版本es后.不过有一个与上表不符的问题(博主暂时也没有找到更好的解释) ,就是平时用jdk8,但运行es7无法启动。在elasticsearch7以上的版本中会自带jdk.需要修改elasticsearch-env配置文件,就可以使用自带jdk版本,不影响其他java项目。

打开 bin/elasticsearch-env.bat文件

​ 从bat文件可以看到,如果我们没有配置ES_JAVA_HOME,会默认使用以前配置的系统变量JAVA_HOME。我的JAVA_HOME版本是8,而这个版本的ES需要jdk11,所以提示以上版本低的提示。

rem comparing to empty string makes this equivalent to bash -v check on env var
rem and allows to effectively force use of the bundled jdk when launching ES
rem by setting JAVA_HOME=
if defined ES_JAVA_HOME (
  set JAVA="%ES_JAVA_HOME%\bin\java.exe"
  set JAVA_TYPE=ES_JAVA_HOME
) else if defined JAVA_HOME (
  rem fallback to JAVA_HOME
  echo "warning: usage of JAVA_HOME is deprecated, use ES_JAVA_HOME" >&2
  set JAVA="%JAVA_HOME%\bin\java.exe"
  set "ES_JAVA_HOME=%JAVA_HOME%"
  set JAVA_TYPE=JAVA_HOME
) else (
  rem use the bundled JDK (default)
  set JAVA="%ES_HOME%\jdk\bin\java.exe"
  set "ES_JAVA_HOME=%ES_HOME%\jdk"
  set JAVA_TYPE=bundled JDK

修改为:

rem use the bundled JDK (default)
set JAVA="%ES_HOME%\jdk\bin\java.exe"
set "ES_JAVA_HOME=%ES_HOME%\jdk"
set JAVA_TYPE=bundled JDK

windows环境变量配置ES_HOME

在这里插入图片描述

**重新启动 elasticsearch-env.bat **

​ 启动ElasticSearch报错:error updating geoip database
在这里插入图片描述
​ 这是一个bug,解决方法是在config/ elasticsearch.yml 中添加如下配置,关闭geoip数据库的更新 :

ingest.geoip.downloader.enabled: false

​ 重启es结果如下:

在这里插入图片描述
4.验证是否安装成功

​ 浏览器地址栏输入:http://localhost:9200/
在这里插入图片描述

​ 大功告成!!!

3.ElasticSearch安装为Windows服务

​ elasticsearch的bin目录下有一个elasticsearch-service.bat ,cmd 进入bin目录下执行: elasticsearch-service.bat install 结果如下:

在这里插入图片描述

​ 可以从任务管理器中看到es服务已经在运行了

在这里插入图片描述

elasticsearch-service.bat后面还可以执行这些命令
install: 安装Elasticsearch服务
remove: 删除已安装的Elasticsearch服务(如果启动则停止服务)
start: 启动Elasticsearch服务(如果已安装)
stop: 停止服务(如果启动)
manager:启动GUI来管理已安装的服务

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

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

相关文章

配置Jenkins的slave agent并使用它完成构建任务

上一章,使用单机配置并运行了一个简单的maven项目,并发布到了一个服务器上启动。这一章将要配置一个slave agent,并将上一章的job放到agent上执行。我们agent使用的是ssh的方式 前置步骤 准备两台虚拟机: 192.168.233.32&#…

4.27 功率谱

功率信号能量一定是无穷大的 1处解释,由于上述信号是截断信号,只有-T/2 ~ T/2有有效信号,因此有了1式 能量信号和能量密度构成傅里叶变换对 功率信号和功率密度构成傅里叶变换对 自相关函数和他的能量谱或者功率谱构成傅里叶变换对

Quiz 12: Regular Expressions | Python for Everybody 配套练习_解题记录

文章目录 Python for Everybody课程简介Regular Expressions单选题(1-8)操作题Regular Expressions Python for Everybody 课程简介 Python for Everybody 零基础程序设计(Python 入门) This course aims to teach everyone the …

CPU acceleration status: KVM requires a CPU that supports vmx or svm

关闭虚拟机,选择处理器将虚拟化引擎第一个选项选上,重新打开虚拟机,进行编译打开模拟器。 source build/envsetup.shlunch aosp_x86_64-engemulator

mesh网格数据解析及cesium绘制格网三角网可视化实现

代码实现运行效果 技术术语 Mesh通常指网络拓扑中的网状结构。在计算机网络中,Mesh是指每个节点都与其他节点相连,形成一个无中心的网状结构。Mesh网络常见于分布式计算、传感器网络、互联网等场景中。另外,在3D计算机图形学中,M…

前端web入门-移动web-day08

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 目录 平面转换 平面转换 transform 平面转换 – 平移 平移实现居中效果 平面转换 – 旋转 平面转换 – 改…

最新特斯拉电机控制器4D1实拍

特斯拉发布过自己的扁线电机,最近Ingineerix大神发布了特斯拉最新动力系统的拆机视频,本篇结合之前的Tesla Model 3 SIC 控制器(控制器具体命名不清楚,以最熟悉的一款车型进行描述我们不妨称之为第二代,第一代为单管IG…

Web安全——JavaScript基础(加入案例)

JavaScript基础 一、概述二、嵌入方法1、内嵌式2、外链式3、行内式 三、语句四、注释五、变量六、JavaScript 保留关键字七、JavaScript 作用域1、JavaScript 局部变量2、JavaScript 全局变量 八、数据类型1、判断类型2、数字类型(Number)3、字符串型&am…

满汉楼项目

满汉楼项目 1. 满汉楼介绍 满汉楼是一个综合餐饮管理系统,其主要分为: 人事登记:各部门人员信息登录管理:员工号、姓名、职位、密码菜谱价格:菜谱及价格报表统计:统计销售额成本及库房:名称注…

深度学习优化算法

梯度下降算法 随机梯度下降。随机梯度下降是指每次迭代在训练数据中随机抽取一个数据计算梯度来更新模型得参数。随机梯度下降容易受到噪声干扰,训练时间长,代价函数最终会围绕全局最小值或者局部极小值震荡。批量梯度下降。每次迭代时使用所有的训练数据来计算梯度更新模型的…

vue使用emit控制改变父组件的值,实现子组件的显示与隐藏

vue使用emit控制改变父组件的值,实现子组件的显示与隐藏 需求概述 父组件在提交表单后,弹框进行提示,子组件是一个弹框。 vue版本 v2.x 实现原理 在父组件内建立控制器isShowModal,使用v-if来控制子组件的显示与隐藏。在子组…

Node.js中的process.nextTick与浏览器环境中的nextTick有何不同?

文章目录 nextTick 是一个用于异步操作的函数Node.js中的process.nextTick vs 浏览器环境中的nextTick1. 执行时机2. 微任务队列3. 堆栈溢出风险4. 兼容性 nextTick 是一个用于异步操作的函数 nextTick 是一个用于异步操作的函数,用来在当前执行栈执行完毕后&#…

第2章 k-近邻算法

文章目录 第2章 k-近邻算法2.1k-近邻算法概述2.1.1准备:使用Python导入数据2.1.2实施kNN分类算法 2.2示例:使用k近邻算法改进约会网站的2.2.2分析数据:使用Matplotlib创建散点图2.2.3准备数据:归一化数值2.2.4测试算法 第2章 k-近…

C++中的继承(超详细)

文章目录 📍前言C中的继承1.继承的概念及定义1.1 继承的概念1.2 继承的定义1.2.1 定义格式1.2.2 继承关系和访问限定符1.2.3 继承基类成员访问方式的变化 2. 基类和派生类对象赋值转换3.继承中的作用域4.派生类的默认成员函数5.继承与友元6.继承与静态成员7.复杂的菱…

Anaconda详细安装及配置教程(Windows)

Anaconda详细安装及配置教程(Windows) 一、下载方式1、官网下载2、网盘下载 二、安装三、配置四、创建虚拟环境 一、下载方式 1、官网下载 点击下载 点击window下载即可。 2、网盘下载 点击下载 二、安装 双击运行 点next 点I agree next 如…

4.26 能量谱

上述函数使用时域计算就很复杂,但是使用帕斯瓦尔就比较简单

git 获取两个版本间的变更文件,生成增量包

可用于代码在无git环境情况下的做增量包 #下面命令可以获取两个版本直接的变更文件 git diff 开始版本号 截止版本号 --name-only 使用管道命令生成压缩包 git diff 开始版本号 截止版本号 --name-only | xargs zip update.zip 牛逼之处就是打出来的压缩包是带有目录层级关系的…

ubuntu20 准备阶段

1. 换源 换成中国的源,图中为腾讯源 2. 系统自带中文输入法 中文输入法 3. 终端Terminator的安装 终端Terminator的安装 4. 截图shtter shutter 5. ros安装 ros安装 6. gazebo11 安装ros自带版本11,可以使用

前端-css选择器

CSS选择器 水平居中 margin: 0 auto;div、p、h 需要设置元素的宽度&#xff0c;否则会自动撑满父元素 <divstyle"margin: 0 auto; width:200px; border: 1px solid #cccccc; text-align: center;" >Hello World! </div>复合选择器 后代选择器 父选择…

Go切片底层原理

slice在函数参数传递过程中是值传递还是引用类型传递&#xff1f; 严格来说&#xff0c;是值传递&#xff0c;但是又呈现出了引用传递的效果 上面图片显示出现了引用传递的现象 但是下面的图片又不符合引用传递的现象了 Slice基本原理 本质是一个结构体 上面的图片也解释了为…