elasticsearch - 用!索引以他们的名义不能被过滤以恢复

标签 elasticsearch

我有一个ES集群,其索引名称如web.analytics.data.api!monthly!2018-07_v0并进行常规快照/备份

现在,当我要还原所有这些时,所有的工作都很好。但是,如果我只想还原特定索引,则不会这样做。我使用的命令:

curl -X POST "localhost:9200/_snapshot/s3_backups/20191218_060001/_restore?pretty&wait_for_completion=true" -H 'Content-Type: application/json' -d'
{
  "indices": "web.analytics.data.api!monthly!2018-07_v0",
  "index_settings": {
    "index.number_of_replicas": 0
  }
}
'

我得到的结果是:
{
  "snapshot" : {
    "snapshot" : "20191218_060001",
    "indices" : [ ],
    "shards" : {
      "total" : 0,
      "failed" : 0,
      "successful" : 0
    }
  }
}

请注意,如果我使用名称中不含!的索引(例如.kibana),则效果很好。关于我该如何解决的任何想法?最好不要告诉开发人员重命名索引。有问题的ES具有1.7.3版本,我知道它是EOL,但这是我现在必须使用的版本。

最佳答案

最终这是我的坏事。我得到的索引不存在(其中有错别字),但我被告知!有问题,所以我没有仔细检查,我选择了测试索引,所以它们当然是正确的...

关于elasticsearch - 用!索引以他们的名义不能被过滤以恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59389089/

相关文章:

sql - 在 Spring boot 应用程序中使用 Elasticsearch 全文搜索 sql 数据库的正确方法

elasticsearch - 在模板文件中指定elasticsearch索引别名

elasticsearch - ElasticSearch查询嵌套对象无法按预期工作

java - 最小数量应匹配,应与 POST 匹配

elasticsearch - 如何将simplequerystring与bool/must结合

python - 无法 pickle _thread.rlock 对象 Pyspark 向 elasticsearch 发送请求

apache - elasticsearch和solr之间的根本区别是什么?

c# - 使用C#API的 Elasticsearch 批量索引

elasticsearch 处理拼写错误

elasticsearch - 如果字段以术语开头,则提高分数