安装jdk(一个java的jdk包,如果没有可以私聊我微信w7752442,备注:php)
rpm -ivh jdk-11_linux-x64_bin.rpm
安装elasticsearch(安装包地址:https://github.com/medcl/elasticsearch-analysis-ik/archive/v6.5.0.tar.gz)
tar zxvf elasticsearch-6.5.0.tar.gz #不要解压到/root 目录下 本次演示解压到根目录
启动时可能会出现 can not run elasticsearch as root
更改目录的所有者和组 切换到 elasticsearch-6.5.0目录的外层执行 chown elastic:elastic -R elasticsearch-6.5.0
因为启动时没有使用 -d参数 所以需要再开启一个终端 查看是否存在9200端口 netstat -tnl
修改:#network.host: 127.0.0.1 的值为network.host: 0.0.0.0 注意:network.host:和0.0.0.0之间有一个空格,否则可能无法启动
切换用户 执行启动命令(没有配置成功之前最好不要执行后台启动的命令)
/elasticsearch-6.5.0/bin/elasticsearch
解决类似max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]
解决类似max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
如果存在9200端口并且通过http://ip:9200访问时返回json格式的数据 则说明启动成功
创建索引 请求方式PUT 请求url http://ip:9200/索引名/类型名/id值 例如http://192.168.8.115:9200/user/test/1
{ "user" : "kimchy", "post_date" : "2009-11-15T14:12:12", "message" : "trying out Elasticsearch" }
获取数据 使用GET方式 请求url http://ip:9200/索引名/类型名/id值 例如http://192.168.8.115:9200/user/test/1
laravel中安装elasticsearch
composer require elasticsearch/elasticsearch
use Elasticsearch\ClientBuilder;
使用方式相同
--------------------------------------------------------------------------------------------------------------------------------------------------------------
分词插件
https://github.com/medcl/elasticsearch-analysis-ik
进入plugins/然后mkdir ik
wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.0/elasticsearch-analysis-ik-6.5.0.zip
unzip elasticsearch-analysis-ik-6.5.0.zip
rm -rf elasticsearch-analysis-ik-6.5.0.zip
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.0/elasticsearch-analysis-ik-6.5.0.zip
如果需要看完整测试代码请参考:https://blog.csdn.net/weixin_42579642/article/details/84316697