如何从数据库中删除所有数据?

时间:2018-02-06 06:04:00

标签: marklogic marklogic-8

只是数据。状态选项卡中数据库的大小应为0 MB 是否有任何API可以完成工作,如果我尝试使用unix命令清除所有目录,该怎么办?是推荐吗?

2 个答案:

答案 0 :(得分:5)

Kishan提到的Admin UI方法将使用森林清除功能,您也可以通过编程方式调用它。这将几乎立即完成,文档删除方法无法在大型数据库上很好地扩展。

尝试使用xdmp:forest-clear()方法,如下所示:

for $forest-id in xdmp:database-forests(xdmp:database())
return xdmp:forest-clear($forest-id)

注意:除非MarkLogic支持或MarkLogic专家指导,否则我强烈建议不要篡改文件系统中的MarkLogic数据文件。

HTH!

答案 1 :(得分:2)

从管理控制台转到特定数据库configure页面。您可以看到清除选项。 Clear将删除数据库中的所有数据。

可替换地, 您可以使用以下查询:

xdmp:document-delete(cts:uris((),(),cts:and-query(())))

cts:uris((),(),cts:and-query(()))将匹配数据库中的所有文档,xdmp:document-delete()将删除这些文档。