elasticsearch入门及安装

参考教程

elasticsearch入门教程:https://www.yiibai.com/elasticsearch/elasticsearch-getting-start.html

Java JDK安装和配置:https://www.yiibai.com/java/java_environment_setup.html

网上的elasticsearch和jdk安装包下载速度太慢了,这是我下载下来保存的

=======================================================

elasticsearch windows安装包:链接: https://pan.baidu.com/s/1fE6rE-lGuwJuA29_0C_VXw 提取码: 5v2v

Java JDK windows64位安装包:链接: https://pan.baidu.com/s/1NVuARW_cK6WeNy-VhTEiVQ 提取码: 8jxs 

curl  windows安装包:链接: https://pan.baidu.com/s/1RLOQOWEo2vt_8YkK7fI-ZQ 提取码: wpny 

=======================================================

Elasticsearch需要先安装JDK并配置环境变量,之后下载安装Elasticsearch

 启动 ElasticSearch

E:\elasticsearch-7.5.0-windows-x86_64\elasticsearch-7.5.0\bin>elasticsearch.bat

启动成功

 启动成功后浏览器地址栏输入:http://localhost:9200/

 创建索引

curl -H "Content-Type: application/json" -XPUT "http://localhost:9200/movies/movie/1" -d "{\"title\": \"The Godfather\",\"director\":\"Francis Ford Coppola\",\"year\": 1972}"
{"_index":"movies","_type":"movie","_id":"1","_version":3,"result":"updated","_shards":{"total":2,"successful":1,"failed":0},"_seq_no":2,"_primary_term":1}

注意,{}内的双引号记得加反斜杠\转义

由ID获取文档/索引

curl  -H "Content-Type: application/json" -XGET "http://localhost:9200/movies/movie/1" -d''
{"_index":"movies","_type":"movie","_id":"1","_version":6,"_seq_no":5,"_primary_term":1,"found":true,"_source":{"title": "The Godfather","director":"Francis Ford Coppola","year": 1972}}

删除文档

curl  -H "Content-Type: application/json" -XGET "http://localhost:9200/movies/movie/1" -d''
{"_index":"movies","_type":"movie","_id":"1","found":false}

搜索所有索引和类型 _search

curl -H "Content-Type: application/json"  -XGET "http://localhost:9200/_search"
{"took":1,"timed_out":false,"_shards":{"total":3,"successful":3,"skipped":0,"failed":0},"hits":{"total":{"value":3,"relation":"eq"},"max_score":1.0,"hits":[{"_index":"movies","_type":"movie","_id":"1","_score":1.0,"_source":{"title": "gangtie","director": "pfeiliu","year": 1999,"genres": ["nishishui", "asdwqe"]}},{"_index":"movies","_type":"movie","_id":"2","_score":1.0,"_source":{"title": "The Godfather","director": "Francis Ford Coppola","year": 1972,"genres": ["Crime", "Drama"]}},{"_index":"movies","_type":"movie","_id":"3","_score":1.0,"_source":{"title": "lawer","director": "lean","year": 1989,"genres": ["youar", "pl"]}}]}}

搜索某索引的数据类型

curl -H "Content-Type: application/json"  -XGET "http://localhost:9200/movies/_search"
{"took":1,"timed_out":false,"_shards":{"total":1,"successful":1,"skipped":0,"failed":0},"hits":{"total":{"value":3,"relation":"eq"},"max_score":1.0,"hits":[{"_index":"movies","_type":"movie","_id":"1","_score":1.0,"_source":{"title": "gangtie","director": "pfeiliu","year": 1999,"genres": ["nishishui", "asdwqe"]}},{"_index":"movies","_type":"movie","_id":"2","_score":1.0,"_source":{"title": "The Godfather","director": "Francis Ford Coppola","year": 1972,"genres": ["Crime", "Drama"]}},{"_index":"movies","_type":"movie","_id":"3","_score":1.0,"_source":{"title": "lawer","director": "lean","year": 1989,"genres": ["youar", "pl"]}}]}}

在指定索引中显式搜索指定类型的文档

curl -H "Content-Type: application/json"  -XGET "http://localhost:9200/movies/movie/_search"
{"took":1,"timed_out":false,"_shards":{"total":1,"successful":1,"skipped":0,"failed":0},"hits":{"total":{"value":3,"relation":"eq"},"max_score":1.0,"hits":[{"_index":"movies","_type":"movie","_id":"1","_score":1.0,"_source":{"title": "gangtie","director": "pfeiliu","year": 1999,"genres": ["nishishui", "asdwqe"]}},{"_index":"movies","_type":"movie","_id":"2","_score":1.0,"_source":{"title": "The Godfather","director": "Francis Ford Coppola","year": 1972,"genres": ["Crime", "Drama"]}},{"_index":"movies","_type":"movie","_id":"3","_score":1.0,"_source":{"title": "lawer","director": "lean","year": 1989,"genres": ["youar", "pl"]}}]}}

常见错误处理:

错误:{"error":"Content-Type header [application/x-www-form-urlencoded] is not supported","status":406}

解决:添加:-H "Content-Type: application/json"

错误:{"error":{"root_cause":[{"type":"mapper_parsing_exception","reason":"failed to parse"}],"type":"mapper_parsing_exception","reason":"failed to parse","caused_by":{"type":"json_e_o_f_exception","reason":"Unexpected end-of-input in field name\n at [Source: org.elasticsearch.common.bytes.BytesReference$MarkSupportingStreamInputWrapper@3c1b21d; line: 1, column: 133]"}},"status":400}curl: (3) unmatched close brace/bracket in URL position 5:
1972}

解决:在{}内的双引号都加上一个"\"转义

查看集群健康状况:

浏览器输入:http://localhost:9200/_cat

 或者http://localhost:9200/_cat/health?v

 查看所有索引:

http://localhost:9200/_cat/indices?v

猜你喜欢

转载自www.cnblogs.com/pfeiliu/p/12040597.html