第一种:最为方便
参考地址:https://blog.csdn.net/lbf5210/article/details/51207043
- 在solr管理页面,访问你的索引库
- documents type 选择 XML
- documents 输入下面语句
<delete><query>*:*</query></delete>
<commit/>
- 点击Submit Document 即可
第二种:SolrJ进行操作
public class DeleteDataAtSolrCloud {
private static CloudSolrClient cloudSolrClient;
private static final String zkHost="你的zookeeper群地址及端口号";
final static String defaultCollection = "你的SolrCollection名";
final static int zkClientTimeout = 20000;
final static int zkConnectTimeout = 1000;
public static void main(String[] args) throws SolrServerException, IOException {
//避免重复创建对象
if(cloudSolrClient == null) {
cloudSolrClient = new CloudSolrClient(zkHost);
}
cloudSolrClient.setDefaultCollection(defaultCollection);
cloudSolrClient.setZkClientTimeout(zkClientTimeout);
cloudSolrClient.setZkConnectTimeout(zkConnectTimeout);
//连接
cloudSolrClient.connect();
// 全部删除、慎用!!!!
cloudSolrClient.deleteByQuery("*:*");
// 提交
cloudSolrClient.commit();
cloudSolrClient.close();
System.out.println("---SUCCESS---");
}
}
第二种也不错,需要删除的时候直接改一改参数,直接运行项目即可。
其他的方法也可以,只是个人觉得这两种操作起来更简单,第一种更简单。
-----------------------------------------------------------分割线-----------------------------------------------------------
后期补充:
参考地址:
删除数据:https://blog.csdn.net/boss_way/article/details/78539586
查询内容为空字段:https://blog.csdn.net/jiangchao858/article/details/76407937
通过方式一,可以知道这种是通过查询所有内容进行删除,所以我们也可以通过查询删除指定内容的记录,比如删除CONTENT字段内容为空的所有记录,只是这样可能比较慢