Solr:如何删除集合?

时间:2014-07-31 14:46:02

标签: solr

我正在使用solr 4.9,不添加任何额外的碎片,只需使用它附带的任何默认值。我创建了一个集合,并尝试使用以下api删除它:

http://<host>/solr/admin/collections?action=DELETE&name=collectionName

但它返回错误:

  

Solr实例未在SolrCloud模式下运行

我的Solr不是solrCloud,但如何删除我的收藏?

8 个答案:

答案 0 :(得分:51)

转到solr文件夹并执行此操作..

bin/solr delete -c collection_name

并使用

重新启动solr
bin/solr restart

答案 1 :(得分:5)

根据本指南(https://cwiki.apache.org/confluence/display/solr/Collections+API),当您处于SolrCloud模式时,此API仅可用。

如果您只想删除核心或只删除该核心中的所有文档,请查看此处 - https://wiki.apache.org/solr/CoreAdmin

答案 2 :(得分:3)

n.b。经过 Solr 4.9 的测试, 应该使用更新的版本。

reader.GetValue(x).ToString()

答案 3 :(得分:2)

答案 4 :(得分:1)

你可以使用curl

curl -X GET -H "Content-Type: application/json" "http://localhost:8983/solr/admin/cores?wt=json&action=UNLOAD&core=gettingstarted"

其中 gettingstarted 是您要删除的核心的名称。 请注意,以上假设 solr 正在端口 8983 上运行。

答案 5 :(得分:1)

您可以通过两种方式删除Solr集合。

1)在命令提示符下:

从您提取Apache Solr的位置启动命令提示符。运行以下命令

Solr\bin>solr delete -c My_Collection

2)从Solr管理控制台:

/admin/collections?action=DELETE&name=collection

有关Apache Solr Collection API的更多信息。 Apache Solr Collection API

答案 6 :(得分:1)

在最新版本的Solr中,您可以通过三种方式删除集合。

  1. 您可以使用bin/solr工具手动删除收藏集
  2. 您可以通过Solr Admin手动删除收藏集
  3. 您可以使用Collections API删除收藏集
  4. 您可以使用V2 API删除集合

使用bin/solr工具删除集合很简单。您进入SOLR_HOME目录,然后运行:

bin/solr delete -c COLLECTION_NAME

要使用Collections API删除集合,您可以运行以下命令:

curl 'localhost:8983/solr/admin/collections?action=DELETE&name=COLLECTION_NAME'

最后,要使用V2 API并使用它来删除集合,您需要执行以下操作:

curl -XPOST 'http://localhost:8983/api/c' -H 'Content-type:application/json' -d '{
  "create" : {
    "name" : "test_collection",
    "config" : "training",
    "numShards" : 1,
    "replicationFactor" : 1
  }
}'

如果您计划很少删除集合,则可以手动执行。如果这是常用的方式(例如,使用别名和基于时间的数据),我建议使用V2 API,因为这是最新的API,并且可能会在某些时候替代旧的API。

答案 7 :(得分:0)

尽管Adam的回答是正确的,但以下是帮助使用它的文档:https://lucene.apache.org/solr/guide/7_7/collections-api.html#delete

我在这个问题上停留了一段时间,只是得到了无效的内核答案删除,我猜这曾经用于集合,但不适用于较新的版本。

相关问题