Linux安装Elasticsearch和IK分词及所遇问题及解决方法
安装Elasticsearch
- 在官网下载安装包
- 解压安装包到指定目录
- cd 到 elasticsearch 的 bin 目录,Mac 用户 elasticsearch
linux 用户 ./elasticsearch 即可- 在浏览器中输入 localhost:9200 查看效果
- 如果需要外网访问,则需要更改 config/elasticsearch.yml,设置
network.host: 0.0.0.0
在安装 elasticsearch 的步骤3中可能会报
Exception in thread "main" java.lang.RuntimeException: don't run elasticsearch as root.
提示你说不能以root用户运行 elasticsearch,因为我们系统当前只有一个root用户,所以我们需要创建一个新用户来启动。
添加分组
groupadd elasticsearch
在该组添加用户
useradd qingxiang -g elasticsearch
赋予用户操作权限
cd 到 elasticsearch 安装目录
chown -R qingxiang elasticsearch
然后 ./bin/elasticsearch 即可成功运行。
安装 ik 分词
安装IK分词,首先要安装Maven环境
接着安装ik
- 在github上下载ik分词包
- 解压到指定的目录
- cd elasticsearch-analysis-ik
- mvn clean | mvn compile | mvn package
- copy & unzip file #{project_path}/elasticsearch-analysis-ik/target/releases/elasticsearch-analysis-ik-*.zip to your elasticsearch’s folder: plugins/ik
- 根据 github 上的文档,创建示例(如 elasticsearch 已经启动,需要重启才能使用插件)
按照上面的步骤操作,如果不顺利的话,在使用javaAPI运行ik分词效果的时候,报
Caused by: java.lang.ClassNotFoundException: com.fasterxml.jackson.dataformat.cbor.CBORConstants经排查,是因为ES和依赖的包的版本过低导致。
下载ES最新的zip文件,解压,从解压出来的文件中选择lib目录,选择需要的jar导入即可。