安装没什么问题,windows安装java环境,下载elastic安装包,chorm安装elastic-head插件php
curl_setopt_array(): Unable to create temporary file
一开始觉得是Yii框架的问题,而后没有用框架测试仍是同样的问题。java
原来是php对临时文件没有写权限,直接更改 php.ini 文件 ,找到 sys_temp_dir='./tmp' 的配置项,将前面的分号 ; 注释去掉 , 我本地是 E:\phpStudy\tmp;node
参考连接:https://www.jianshu.com/p/8f2b23db9006git
刚开始看到这个错误很懵比,可是仔细看看原来是数据类型和输入值不同致使的。我在建立索引的时候定义的类型为 integer 类型,结果插入数据为 string 类型,致使报错。
github
我对 order_id 创建的索引是 keyword,而且不对此字段进行分析,可是我按照order_id搜索的时候并无匹配到结果json
{ "index": "order", "type": "order", "body": { "from": 0, "size": 20, "query": { "bool": { "must": [ { "term": { "order_id": "8589b284-f3e5-11e8-a35c-abd59385df3a" } } ] } } } }
暂时也没有找到缘由,在看到elasticsearch-head里面用的是order_id.keyword精确查询windows
IK分词器对中文十分的友好,因而在github上下载了一个。解压后放在plugins目录下,可是从新启动elasticsearch老是失败。服务器
原来是ik分词器我下载的是最新版本6.5.2,可是elasticsearch是6.5.1,版本不匹配致使的。因此ik分词器和elasticsearch版本要一致才能够正常启动。框架
https://github.com/medcl/elasticsearch-analysis-pinyin/releases
https://github.com/medcl/elasticsearch-analysis-ik/releasescurl
匹配插入文档的时候,会出现这个错误。缘由是由于批量插入因为是短链接,致使频繁连接elasticsearch服务器。 优化代码更改为长链接,作成单例