elasticsearch安装分词器和操作

安装分词器

1,查看分词器是否安装
bash 复制代码
# 检查已安装的插件
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin list

如果没有安装,进行安装,此方法安装的时候提示分词器不存在

2,安装分词器
方法一:直接下载安装
bash 复制代码
# 如果 IK 分词器未安装,安装它
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.10.0/elasticsearch-analysis-ik-7.10.0.zip

用这种方法试试

bash 复制代码
# 创建临时目录
mkdir -p /tmp/ik_plugin
cd /tmp/ik_plugin

# 下载 IK 分词器(使用备用链接)
wget https://artifacts.elastic.co/downloads/elasticsearch-plugins/analysis-ik/elasticsearch-analysis-ik-7.10.0.zip

# 如果上面的链接不行,尝试从其他源下载
wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.10.0/elasticsearch-analysis-ik-7.10.0.zip

如果还提示404不存在

方法二:从源码编译安装

在码云上搜索elasticsearch-analysis-ik这个

打开连接搜索的链接Gitee根据自己的版本进行下载,我这里下载的是7.10版本

下载完之后解压

bash 复制代码
#解压
sudo unzip elasticsearch-analysis-ik-7.10.zip

如果没有安装maven,进行安装

bash 复制代码
cd elasticsearch-analysis-ik-7.10/
#安装maven
sudo apt install maven
#停止es
sudo systemctl stop elasticsearch
#编译打包
cd elasticsearch-analysis-ik-7.10/

安装分词器

bash 复制代码
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install ./elasticsearch-analysis-ik-7.10/target/releases/elasticsearch-analysis-ik-7.10.0.zip

成功的界面

备注:这里查看下生成的压缩文件是哪个版本,如果不是elasticsearch-analysis-ik-7.10.0.zip版本,就需要修改pom文件

修改pom文件,如果没有报错,执行执行启动es的那一步

bash 复制代码
# 回到源码目录
cd /home/jing/Downloads/elasticsearch-analysis-ik-7.10

# 修改版本号
nano pom.xml

找到这一行并修改:

bash 复制代码
<elasticsearch.version>7.10.2</elasticsearch.version>

改为

bash 复制代码
<elasticsearch.version>7.10.0</elasticsearch.version>

然后重新编译

bash 复制代码
mvn clean package -DskipTests

再次执行

bash 复制代码
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install file:///home/jing/Downloads/elasticsearch-analysis-ik-7.10/target/releases/elasticsearch-analysis-ik-7.10.0.zip

启动es

bash 复制代码
sudo systemctl start elasticsearch

查看安装的分词器

bash 复制代码
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin list

显示

bash 复制代码
# 测试 IK 分词器
curl -X GET "http://localhost:9200/_analyze" -H 'Content-Type: application/json' -d'
{
  "analyzer": "ik_smart",
  "text": "中华人民共和国"
}'

es的操作

bash 复制代码
#删除索引
curl -X DELETE "http://localhost:9200/knowledge"
#查看索引
curl -X GET "http://localhost:9200/knowledge"
#查看映射
curl -X GET "http://localhost:9200/knowledge/_mapping"

# 查看索引设置
curl -X GET "http://localhost:9200/knowledge/_settings?pretty"

查看索引中的所有数据

bash 复制代码
# 查看索引中的所有文档
curl -X GET "http://localhost:9200/knowledge/_search?pretty"

# 或者使用 POST 方式
curl -X POST "http://localhost:9200/knowledge/_search?pretty" -H 'Content-Type: application/json' -d'
{
  "query": {
    "match_all": {}
  }
}'
# 查看前5条数据
curl -X GET "http://localhost:9200/knowledge/_search?pretty" -H 'Content-Type: application/json' -d'
{
  "size": 5,
  "query": {
    "match_all": {}
  }
}'```

2. 查看特定文档

```bash
# 根据文档ID查看
curl -X GET "http://localhost:9200/knowledge/_doc/1?pretty"

# 查看多个文档
curl -X GET "http://localhost:9200/knowledge/_doc/1,2,3?pretty"
  1. 搜索特定内容
bash 复制代码
# 搜索包含特定关键词的文档
curl -X GET "http://localhost:9200/knowledge/_search?pretty" -H 'Content-Type: application/json' -d'
{
  "query": {
    "match": {
      "fileName": "测试"
    }
  }
}'

# 多字段搜索
curl -X GET "http://localhost:9200/knowledge/_search?pretty" -H 'Content-Type: application/json' -d'
{
  "query": {
    "multi_match": {
      "query": "测试",
      "fields": ["fileName", "content"]
    }
  }
}'

最常用的几个命令:

bash 复制代码
# 1. 快速查看所有数据
curl -X GET "http://localhost:9200/knowledge/_search?pretty"

# 2. 查看文档数量
curl -X GET "http://localhost:9200/knowledge/_count?pretty"

# 3. 查看映射结构
curl -X GET "http://localhost:9200/knowledge/_mapping?pretty"

# 4. 搜索特定内容
curl -X GET "http://localhost:9200/knowledge/_search?pretty" -H 'Content-Type: application/json' -d'
{
  "query": {
    "match": {
      "fileName": "搜索关键词"
    }
  }
}'
相关推荐
编程彩机1 小时前
互联网大厂Java面试:从分布式架构到大数据场景解析
java·大数据·微服务·spark·kafka·分布式事务·分布式架构
vx-bot5556662 小时前
企业微信接口在多租户SaaS平台中的集成架构与数据隔离实践
大数据·架构·企业微信
bubuly4 小时前
软件开发全流程注意事项:从需求到运维的全方位指南
大数据·运维·数据库
xixixi777776 小时前
基于零信任架构的通信
大数据·人工智能·架构·零信任·通信·个人隐私
Hello.Reader7 小时前
Flink 自适应批执行(Adaptive Batch Execution)让 Batch 作业“边跑边优化”
大数据·flink·batch
LaughingZhu8 小时前
Product Hunt 每日热榜 | 2026-01-31
大数据·人工智能·经验分享·搜索引擎·产品运营
babe小鑫8 小时前
中专学历进入快消大厂终端销售岗位的可行性分析
大数据
samFuB8 小时前
【工具变量】区县5A级旅游景区DID数据集(2000-2025年)
大数据
百夜﹍悠ゼ8 小时前
数据治理DataHub安装部署
大数据·数据治理
wdfk_prog9 小时前
解决 `git cherry-pick` 引入大量新文件的问题
大数据·git·elasticsearch