ElasticSearch学习笔记(一)
计算机软件的学习,最重要的是举一反三,只要大胆尝试,认真验证自己的想法就能收到事办功倍的效果。在开始之前可以看看别人的教程做个快速的入门,然后去官方网站看看官方的教程,有中文教程固然是好,没有中文教程大家也不要怕,硬着头皮看下去一定有收获
本人对ES并不熟悉,虽然十几年前就接触过Lucene,但是无奈当时技术太菜根本就没有深入下去,最近准备认真的研究一下ES,边探索,边记录,可能会有错误的理解,回头再更正吧。我想我这笔记最重要的是给正在学习编程技术的同学点启发,以便能够在编程之路上走的再快些再稳些。
一、安装Elasticsearch
win10下安装
ElasticSearch下载
下载完成后直接解压缩就可以使用了。
解压后的ElasticSearch目录如下图所示。
- bin 可执行文件目录.
- config 配置文件目录
- jdk Elasticsearch是依赖JDK,这里是Elastic内置的JDK环境
- lib 类库
- logs 日志
- modules 模块
- plugins 插件
二、ElasticSearch启动
进入bin目录,双击elasticsearch.bat
批处理文件就可以启动ES了。
如果出现下图所示的黑窗口说明ES启动成功,ES启动完成后不要关闭cmd窗口。
打开浏览器,在地址栏中输入https://localhost:9200,应该能够出现ES的登录界面。
👿 ES 8.11默认是开启SSL的,所以一定要注意使用https://localhost:9200
可是我们好像并不知道用户名和密码啊?
三、重置ES内置用户密码
ES内置了一个用户名为elastic的用户,但是这个用户的密码我们却不知道,翻看了ES的启动信息也没有找到。
进入bin目录,仔细观察会发现有个password相关的批处理文件elasticsearch-setup-passwords.bat
双击这个文件一闪就退出了,用编辑器打开看看里面的内容吧。
大胆猜测这个批处理文件其实是调用了安全相关的模块,需要使用cmd命令行来运行它。
进行elasticsearch-reset-password.bat
批处理文件,窗口输出了帮助信息。从帮助信息可以得知批处理文件必选参数是-u
,后跟用户名。
命令格式如下
elasticsearch-reset-password.bat -u elastic
使用我们重置的新密码就可以登录了。
上图是登录成功的截图。
使用elasticsearch-reset-password.bat
命令我们重置了内置用户elastic的密码,可是这个密码的复杂度有点高,很难记忆,作为练习使用的elasticsearch我想设置一个简单易记的密码。好吧,再研究一下elasticsearch-reset-password.bat
这个批处理吧。
通过-h帮助我们可以看到上图的输出信息。从这些信息中可以得知批处理后可以加Eabfhisu url v这几个参数,其中-u是必加参数,-i是交互式参数。那么就运行一下-i参数看看有什么输出吧。
提示你将要重置用户[elastic]的密码,你是否继续,[y/N]的意思是如果你在交互模式下输入y,表示你将进入重置密码的流程,大写的N表示默认输入是N,如果你直接回车则不进入重置密码流程。
💁♂ [y/N]和[Y/n]在很多交互模式中都通用的,要学会举一反三。
输入两次新密码后就重置成功了,连原密码都不要,从这里也能让大家明白,所谓的安全都是相对的。很多软件的安全性都是基于操作系统的,操作系统的安全性,是你整个安全系统的第一道屏障。
上图是直接回车的输出。
通过上面的命令重置elastic的密码后,再刷新https://localhost:9200, ES会让你重新输入用户名和密码,这次你就可以使用便于记忆的密码了。
四、用户操作
再仔细查看bin目录,发现还有一个elasticsearch-users.bat
批处理文件,见名知义,这个文件肯定是和用户操作相关的,大胆的试一下吧。
两个批处理文件的内容完全相同,可见这个批处理文件是通过文件名传参的,同样运行一下elasticsearch-users.bat
看看有什么提示吧。
从帮助说明中不难看出,添加用户的命令是
elasticsearch-users.bat useradd <用户名>
非常的简单。
接下来重置一下内置用户elastic的密码,再刷新页面https://localhost:9200
果然又弹出了登录界面,使用上面我们新建的用户和密码登录,下图是新用户登录后的截图。
虽然登录成功了,但是报错了,大概意思是没有给新用户赋角色。
继续探索。
通过上面的命令,我似乎为新用户赋了superuser的角色。
再次刷新https://localhost:9200
页面,出现下图。
看来为新用户赋角色成功了。
💁♂ 总结: bin目录是ES的各种可执行文件运行目录,使用cmd命令打开相关的批处理文件。
本文使用了elasticsearch-setup-passwords.bat
重置用户密码批处理,和elasticsearch-users.bat
新建用户批处理。
💁♂ 要给新建用户赋不同的角色,否则登录后会报错。
💁♂ 常见的用户角色有以下几种:
Known roles: [apm_system, watcher_admin, viewer, alfiy, logstash_system, rollup_user, kibana_user, beats_admin, remote_monitoring_agent, rollup_admin, snapshot_user, data_frame
_transforms_admin, monitoring_user, enrich_user, kibana_admin, logstash_admin, editor, data_frame_transforms_user, machine_learning_user, machine_learning_admin, watcher_user,
apm_user, beats_system, reporting_user, transform_user, kibana_system, transform_admin, transport_client, remote_monitoring_collector, ingest_admin, superuser]
上面的角色各类其实是我从cmd命令中复制出来的,想了解详情到官方文档去看吧。(我还没去看,下次我看到了会在此处加文档链接)。
相关文章:

ElasticSearch学习笔记(一)
计算机软件的学习,最重要的是举一反三,只要大胆尝试,认真验证自己的想法就能收到事办功倍的效果。在开始之前可以看看别人的教程做个快速的入门,然后去官方网站看看官方的教程,有中文教程固然是好,没有中文…...

go写文件后出现大量NUL字符问题记录
目录 背景 看看修改前 修改后 原因 背景 写文件完成后发现: size明显也和正常的不相等。 看看修改前 buf : make([]byte, 64) buffer : bytes.NewBuffer(buf)// ...其它逻辑使得buffer有值// 打开即将要写入的文件,不存在则创建 f, err : os.Open…...
【Collection - PriorityQueue源码解析】
本文主要对Collection - PriorityQueue进行源码解析。 Collection - PriorityQueue源码解析 概述方法剖析 add()和offer()element()和peek()remove()和poll()remove(Object o) 概述 前面以Java ArrayDeque为例讲解了Stack和Queue,其实还有一种特殊的队列叫做Priori…...
Javascript_根据截止日期超时自动返回
例如定时交卷功能,隐藏一个input id"endTime"存放超时时间,例如2023-12-01 20:56:15,使用如下代码即可实现超时自动处理。 <script src"/jquery.min.js"></script><script type"text/javascript&qu…...

记录 | vscode设置自动换行
右上菜单栏 -> 查看 -> 打开自动换行 或者还有种方式,如下, 左下角小齿轮,点击设置 然后输入 Editor: Word Wrap ,把开关打开为 on...

k8s引用环境变量
一 定义环境变量 ① 如何在k8s中定义环境变量 env、configmap、secret补充: k8s 创建Service自带的环境变量 ② 从pod属性中获取 kubectl explain deploy.spec.template.spec.containers.env.valueFrom关注: configMapKeyRef、fieldRef 和 resour…...

navicate16 2059 plugin http could not be loaded
plugin http could not be loaded 乱码 library path http.dll 今天新装一台机子的navicate遇到这个问题。 查了半天都是说 caching_sha2_password’的解决办法。 然后是咋解决的呢,真是丢脸 由于我是直接从浏览器复制下来的ip,所以虽然我只复制了ip地…...
dp-基础版动态规划(动态规划每日一题计划)10/50
最小路径和 class Solution {public static int minPathSum(int[][] grid) {int dp[][]new int[grid.length][grid[0].length];dp[0][0]grid[0][0];for(int i1;i<grid[0].length;i){dp[0][i]grid[0][i]dp[0][i-1];}for(int i1;i<grid.length;i){dp[i][0]grid[i][0]dp[i-…...

轻食沙拉店外卖配送小程序商城效果如何
轻食沙拉店也是餐饮业中较为受欢迎的品类,其具备健康属性绿色食材涵盖广泛人群,虽然如此,但也缺乏一定市场教育,部分消费者依然对这一类目知之甚少,而商家想要进一步扩大生意,就需要不断品牌宣传、餐品销售…...
Oracle ADRCI工具使用说明
1.ADRCI介绍 ADRCI是一个命令行工具,是Oracle 11g中引入的故障可诊断性架构的一部分。 ADRCI可以完成以下: 查看自动诊断信息库(ADR)中的诊断数据。 查看Health Monitor报告。 将事件和问题信息打包到zip文件中以传输到Oracle Su…...

Amazon CodeWhisperer 正式可用, 并面向个人开发者免费开放
文章作者:深度-围观 北京——2023年4月18日,亚马逊云科技宣布,实时 AI 编程助手 Amazon CodeWhisperer 正式可用,同时推出的还有供所有开发人员免费使用的个人版(CodeWhisperer Individual)。CodeWhisperer…...
8-Hive原理与技术
单选题 题目1:按粒度大小的顺序,Hive数据被分为:数据库、数据表、桶和什么 选项: A 元祖 B 栏 C 分区 D 行 答案:C ------------------------------ 题目2:以下选项中,哪种类型间的转换是被Hive查询语言…...
cloudflare Tunnel完整
下载和安装 curl -L ‘https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64’ -o ./cloudflared-linux-amd64 280 chmod x ./cloudflared-linux-amd64 281 ./cloudflared-linux-amd64 282 mv cloudflared-linux-amd64 cloudflared …...

微信聊天窗口测试用例
以前没测过客户端的测试,昨天面试被问到聊天窗口测试场景设计,感觉自己答的不好,结束后上网查了一下客户端/app测试的要点,按照测试策略来分,主要涉及到如下测试类型: 1、功能测试 2、性能测试 3、界面测试…...

Linux下配置邮箱客户端MUTT,整合msmtp + procmail + fetchmail
一、背景 在向 Linux kernel 社区提交patch补丁步骤总结(已验证成功)_kernel补丁-CSDN博客文章中提到如何向kernel社区以及其他类似如qemu、libvirt社区提交patch的详细步骤,但还有一点不足的是通过git send-email这种方法基本是只能发送patc…...

[每周一更]-(第75期):Go相关粗浅的防破解方案
Go作为编译语言,天然存在跨平台的属性,我们在编译完成后,可以再不暴露源代码的情况下,运行在对应的平台中,但是 还是架不住有逆向工程师的反编译、反汇编的情形;(当然我们写的都不希望被别人偷了…...

停留时间是您需要跟踪的 SEO 指标
介绍 停留时间是指用户在点击搜索引擎结果后但在返回搜索引擎结果页面之前在网站上花费的时间。它是搜索引擎优化 (SEO) 的一个重要指标,因为它衡量用户参与度并指示网站是否向访问者提供有价值且相关的内容。搜索引擎,如谷歌&am…...
ES常用操作语句
ES常用操作语句 注:本文中的操作语句基于ES5.5和7.7的版本,版本不同操作语句上可能有细微差别,如5.5版本有索引类型,7.7版本已废弃,查询不应该带索引类型 新增 # 添加字段,并设置字段类型 PUT /索引/_map…...

MicroPython STM32F4 RTC功能使用介绍
MicroPython STM32F4 RTC功能使用介绍 🔖STM32和ESP32 RTC功能差不多,相关篇《MicroPython ESP32 RTC功能使用介绍》📌固件刷可参考前面一篇《STM32刷Micropython固件参考指南》🌿 相关篇《Micropython STM32F4入门点灯》…...

【鸿蒙应用ArkTS开发系列】- 选择图片、文件和拍照功能实现
文章目录 前言创建多媒体Demo工程创建MediaBean 实体类创建MediaHelper工具类API标记弃用问题动态申请多媒体访问权限实现选择图片显示功能打包测试 前言 在使用App的时候,我们经常会在一些社交软件中聊天时发一些图片或者文件之类的多媒体文件,那在鸿蒙…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻
在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...

Mac软件卸载指南,简单易懂!
刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"࿰…...
uniapp中使用aixos 报错
问题: 在uniapp中使用aixos,运行后报如下错误: AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...
C++八股 —— 单例模式
文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全(Thread Safety) 线程安全是指在多线程环境下,某个函数、类或代码片段能够被多个线程同时调用时,仍能保证数据的一致性和逻辑的正确性…...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...
Spring是如何解决Bean的循环依赖:三级缓存机制
1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间互相持有对方引用,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...
第7篇:中间件全链路监控与 SQL 性能分析实践
7.1 章节导读 在构建数据库中间件的过程中,可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中,必须做到: 🔍 追踪每一条 SQL 的生命周期(从入口到数据库执行)&#…...

Qemu arm操作系统开发环境
使用qemu虚拟arm硬件比较合适。 步骤如下: 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载,下载地址:https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...

Ubuntu系统复制(U盘-电脑硬盘)
所需环境 电脑自带硬盘:1块 (1T) U盘1:Ubuntu系统引导盘(用于“U盘2”复制到“电脑自带硬盘”) U盘2:Ubuntu系统盘(1T,用于被复制) !!!建议“电脑…...