码迷,mamicode.com
首页 > 其他好文 > 详细

如何在Elasticsearch中删除中文索引

时间:2019-07-08 19:14:06      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:action   except   ast   ssg   red   count   arch   source   test   

背景

因为某种特殊的原因,发现在es集群中出现了中文名称的索引,通过_cat API查询结果如下:

GET /_cat/indices/?v

health status index   uuid                   pri rep docs.count docs.deleted store.size pri.store.size
green  open   rcp-b   nqTIHs6-SSG0K-Pa7guIIA   5   0          1            0        4kb            4kb
green  open   .kibana T4aQP8DTT72aS0qrg7k_-w   1   0         19            3     64.6kb         64.6kb
red  open   测试索引中文 T4aQP8DTT99aS0qrg7k_-w   5   1         19            3     64.6kb         64.6kb

如何删除这个"测试索引中文" 的索引呢 ?

直接用DELETE API 删除报错

DELETE /测试索引中文

{
  "error": {
    "root_cause": [
      {
        "type": "index_not_found_exception",
        "reason": "no such index",
        "index_uuid": "_na_",
        "resource.type": "index_or_alias",
        "resource.id": "K?\"\u0015-?",
        "index": "K?\"\u0015-?"
      }
    ],
    "type": "index_not_found_exception",
    "reason": "no such index",
    "index_uuid": "_na_",
    "resource.type": "index_or_alias",
    "resource.id": "K?\"\u0015-?",
    "index": "K?\"\u0015-?"
  },
  "status": 404
}

解决办法

思路就是用别名API(_alias)将这个中文索引,别名成英文,然后再用DELETE API删除

POST /_aliases
{
    "actions" : [
        { "add" : { "index" : "测试索引中文", "alias" : "testcn" } }
    ]
}

DELETE /testcn

如何在Elasticsearch中删除中文索引

标签:action   except   ast   ssg   red   count   arch   source   test   

原文地址:https://www.cnblogs.com/wangzhen3798/p/11152929.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!