zoukankan      html  css  js  c++  java
  • Elasticsearch2.4.6版本 在linux 命令行 对数据的增删改操作

    一、_cluster系列:查询设置集群状态

    1、设置集群状态

    curl -XGET 10.68.120.167:9204/_cluster/health?pretty=true

    pretty=true 表示格式化输出 level=indices 表示显示索引状态 level=shards 表示显示分片信息

     2、显示集群系统信息,包括CPU JVM等等:curl -XGET 10.68.120.167:9204/_cluster/stats?pretty=true

     3、获取集群堆积的任务:curl -XGET 10.68.120.167:9204/_cluster/pending_tasks?pretty=true

     4、修改集群配置:

    curl -XPUT 10.68.120.167:9204/_cluster/settings -d ‘{
    “persistent” : {
    “discovery.zen.minimum_master_nodes” : 2
    }
    }’
    transient 表示临时的,persistent表示永久的
    5、对shard的手动控制:curl -XPOST ‘10.68.120.167:9204/_cluster/reroute’ -d ‘xxxxxx’

    6、关闭指定192.168.1.1节点

    curl -XPOST ‘http://192.168.1.1:9200/_cluster/nodes/_local/_shutdown’
    curl -XPOST ‘http://localhost:9200/_cluster/nodes/192.168.1.1/_shutdown’
    7、关闭主节点: curl -XPOST ‘http://localhost:9200/_cluster/nodes/_master/_shutdown’

    8、关闭整个集群:

    curl -XPOST ‘http://localhost:9200/_shutdown?delay=10s’
    delay=10s表示延迟10秒关闭
    curl -XPOST ‘http://localhost:9200/_cluster/nodes/_shutdown’
    curl -XPOST ‘http://localhost:9200/_cluster/nodes/_all/_shutdown’


    二、_nodes系列:查询节点的状态

    curl -XGET ‘http://localhost:9200/_nodes/stats?pretty=true’
    curl -XGET ‘http://localhost:9200/_nodes/192.168.1.2/stats?pretty=true’
    curl -XGET ‘http://localhost:9200/_nodes/process’
    curl -XGET ‘http://localhost:9200/_nodes/_all/process’
    curl -XGET ‘http://localhost:9200/_nodes/192.168.1.2,192.168.1.3/jvm,process’
    curl -XGET ‘http://localhost:9200/_nodes/192.168.1.2,192.168.1.3/info/jvm,process’
    curl -XGET ‘http://localhost:9200/_nodes/192.168.1.2,192.168.1.3/_all
    curl -XGET ‘http://localhost:9200/_nodes/hot_threads

    三、索引操作

    1、创建一个index:curl -XPUT '10.68.120.167:9204/wzxtest02?pretty&pretty'

     

    2、查询所有的index:curl -XGET '10.68.120.167:9204/_cat/indices?v&pretty'

    3、删除index:curl -XDELETE '10.68.120.167:9204/wzxtest02?pretty'

     4、检查ES节点是否正常启动:curl http://10.68.120.167:9204

    非正常状态:

      1>确保服务是不是正常启动了,端口用的是哪个

      2>防火墙是否关闭或者端口是否开放

      3>你的curl命令是否有问题,curl命令可能导致服务无法访问,可以尝试重启服务后,在外部浏览器访问URL地址即可。不一定非得用curl

     5、检测集群健康状态:curl http://10.68.120.167:9204/_cat/health?v

    绿色表示一切正常, 黄色表示所有的数据可用但是部分副本还没有分配,红色表示不可用

    6、再新增的index中插入数据:curl -XPUT http://10.68.120.167:9204/wzxstu1/base/88?pretty -d '{"name":"pppp","age":"9999"}'

     

     7、根据ID查询刚才获取的数据:curl -XGET http://10.68.120.167:9204/wzxstu1/base/88?pretty

     8、根据ID,PUT请求修改刚才的数据:curl -XPUT http://10.68.120.167:9204/wzxstu1/base/88?pretty -d '{"name":"李四修改烦烦烦方法","age":"444"}'

     查询数据验证是否修改成功:curl -XGET http://10.68.120.167:9204/wzxstu1/base/88?pretty

     9、根据ID,POST请求修改刚才的数据:curl -XPOST http://10.68.120.167:9204/wzxstu1/base/88?pretty -d '{"doc":{"name":"李四更新啊啊啊啊啊","age":"230"}}'

      查询数据验证是否修改成功:curl -XGET http://10.68.120.167:9204/wzxstu1/base/88?pretty

     10、新增数据的同时新增多列:curl -XPOST http://10.68.120.167:9204/wzxstu1/base/889?pretty -d '{"doc":{"name":"怕怕怕怕更新","age":"230","address":"北京东直门","addr":"aaaa","date":"2020-05-14"}}'

    查询数据验证是否新增成功:curl -XGET http://10.68.120.167:9204/wzxstu1/base/889?pretty

     11、修改字段内容的同时修改类型:将age字段字符串类型,修改为数字类型:修改数据的同时修改字段类型:curl -XPOST http://10.68.120.167:9204/wzxstu1/base/889?pretty -d '{"doc":{"name":"类型类型","age":6666,"address":"杭州"}}'

     查询数据验证是否新增成功:curl -XGET http://10.68.120.167:9204/wzxstu1/base/889?pretty

    12、根据ID删除数据:curl -XDELETE http://10.68.120.167:9204/wzxstu1/base/880?pretty

     查询是否删除成功:curl -XGET http://10.68.120.167:9204/wzxstu1/base/880?pretty

     13、批量修改数据 :

    curl -XPOST http://10.68.120.167:9204/wzxstu1/base//_bulk?pretty -d '
    {"index":{"_id":"20"}}
    {"name":"赵思","age":12}
    {"index":{"_id":"15"}}
    {"name":"钱三一","age":13}
    '

    14、查询索引所有数据方式1:curl http://10.68.120.167:9204/wzxstu1/_search?q=*&pretty

    查询索引所有数据方式2:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "match_all":{

    }
    }
    }
    '

    查询索引所有数据方式3:curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '{"query":{ "match_all":{}}}'

    查询索引所有数据方式4:size不指定默认显示10条

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "match_all":{

    }
    },
    "size":1
    }
    '

     15、分页查询,从第10条,返回10条:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "match_all":{

    }
    },
    "from": 10,
    "size": 10
    }
    '

    16、按照age字段倒序排序 sort,取出20条:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '

    {
    "query":{
    "match_all":{

    }
    },
    "sort":{
    "age":{
    "order":"desc"
    }
    },
    "from": 0,
    "size": 2
    }
    '

    17、只返回想查询的部分字段:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "match_all":{

    }
    },
    "_source":[
    "name",
    "addr"
    ]
    }
    '18、条件匹配查询 查询age=19的数据:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "match":{
    "name":"wzx"
    }
    }
    }
    '19、查询address中包含 “北京” 的数据:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "match":{
    "addr":"河北"
    }
    }
    }
    '

    20、查询 address中 包含“wzx” 或 “周润发”的所有数据 【匹配单个词语  空格分隔】:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "match":{
    "name":"wzx 周润发"
    }
    }
    }
    '

    21、查询address中包含“北京 西安” 完整词语的【短语匹配,“北京 西安”作为一个完整词语查询】:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "match_phrase":{
    "address":"北京 西安"
    }
    }
    }

    22、布尔查询bool   and查询,必须同时满足 address中包含“北京”,又要满足address中包含“西安”,must表示所有查询必须都为真才被认为匹配:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "bool":{
    "must":[
    {
    "match":{
    "address":"北京"
    }
    },
    {
    "match":{
    "address":"西安"
    }
    }
    ]
    }
    }
    }
    '

    23、布尔查询bool  or查询 address中包含“北京” 或者 address中包含“西安” 都可以,should 表示查询列表中只要有任何一个为真则认为匹配

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "bool":{
    "should":[
    {
    "match":{
    "address":"北京"
    }
    },
    {
    "match":{
    "address":"西安"
    }
    }
    ]
    }
    }
    }
    '

    24、布尔查询bool   都不能满足的   既不能包含这个,也不能包含那个:must_not表示查询列表中没有为真的(也就是全为假)时则认为匹配

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "bool":{
    "must_not":[
    {
    "match":{
    "address":"北京"
    }
    },
    {
    "match":{
    "address":"西安"
    }
    }
    ]
    }
    }
    }
    '

    25、布尔查询  多条件组合  查询:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "bool":{
    "must":[
    {
    "match":{
    "age":200
    }
    }
    ],
    "must_not":[
    {
    "match":{
    "address":"西安"
    }
    }
    ]
    }
    }
    }
    '

    26、范围查询 range 查询年龄25-30之间的:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "query":{
    "range":{
    "age":{
    "gte":25,
    "lte":30
    }
    }
    }
    }
    '

    27、聚合查询 aggs,按照name进行聚合分组,然后按照记录数,从大到小排序,默认返回前10条:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "size":0,
    "aggs":{
    "group_by_name":{
    "terms":{
    "field":"name"
    }
    }
    }
    }
    '

    28、聚合查询 aggs ,求age的平均值:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "size":0,
    "aggs":{
    "average_age":{
    "avg":{
    "field":"age"
    }
    }
    }
    }
    '

    29、按name分组,求age的平均值:

    curl -XPOST http://10.68.120.167:9204/wzxstu1/_search?pretty -d '
    {
    "size":0,
    "aggs":{
    "group_by_name":{
    "terms":{
    "field":"name"
    },
    "aggs":{
    "average_age":{
    "avg":{
    "field":"age"
    }
    }
    }
    }
    }
    }
    '

  • 相关阅读:
    Action<T>和Func<T>的使用(转)
    javascript将网页表格导出Word(转载)
    jQuery扩展方法2(转载)
    Microsoft SQL Server 2008 安装说明
    INSERT INTO 语句的语法错误 access 保留字段
    .NET 验证控件
    TFS强制撤销用户的签出
    .net 操作XML
    TFS 恢复删除文件
    checkboxlist详细用法、checkboxlist用法、checkboxlist
  • 原文地址:https://www.cnblogs.com/wzx1blog/p/12888876.html
Copyright © 2011-2022 走看看