Neo4j缺少一些程序

时间:2018-05-01 22:06:45

标签: neo4j neo4j-apoc

我正在使用APOC 3.3.0.1。

dbms.security.procedures.unrestricted=algo.*, apoc*

不确定为什么我的Neo4j中缺少某些程序。

像 dbms.security.listUsers

dbms.security.changePassword

dbms.showCurrentUser

dbms.security.createUser

dbms.security.deleteUser

以下是我在CALL dbms.procedures()

中列出的dmb
"dbms.components"   "dbms.components() :: (name :: STRING?, versions :: LIST? OF STRING?, edition :: STRING?)"  "List DBMS components and their versions."
"dbms.functions"    "dbms.functions() :: (name :: STRING?, signature :: STRING?, description :: STRING?)"   "List all user functions in the DBMS."
"dbms.listConfig"   "dbms.listConfig(searchString = :: STRING?) :: (name :: STRING?, description :: STRING?, value :: STRING?)" "List the currently active config of Neo4j."
"dbms.procedures"   "dbms.procedures() :: (name :: STRING?, signature :: STRING?, description :: STRING?)"  "List all procedures in the DBMS."
"dbms.queryJmx" "dbms.queryJmx(query :: STRING?) :: (name :: STRING?, description :: STRING?, attributes :: MAP?)"  "Query JMX management data by domain and name. For instance, "org.neo4j:*""

也缺少一些APOC程序。

特别是对于我只有以下程序的apoc.date *

"apoc.date.expire"  "apoc.date.expire(node :: NODE?, time :: INTEGER?, timeUnit :: STRING?) :: VOID"    "CALL apoc.date.expire(node,time,'time-unit') - expire node in given time by setting :TTL label and `ttl` property"
"apoc.date.expireIn"    "apoc.date.expireIn(node :: NODE?, timeDelta :: INTEGER?, timeUnit :: STRING?) :: VOID" "CALL apoc.date.expire.in(node,time,'time-unit') - expire node in given time-delta by setting :TTL label and `ttl` property"

1 个答案:

答案 0 :(得分:1)

您引用的安全和用户程序仅在企业版中提供,您无法在社区版本中访问它们。

至于日期,自APOC首次推出以来,已经添加了创建自定义用户功能的能力,并且许多程序(包括大多数日期和其他帮助程序)作为功能更有意义(你可以使用内联,而不需要CALL或YIELD)。

尝试使用CALL dbms.functions(),您应该会看到您在那里寻找的内容。

您还可以使用CALL apoc.help()并传递proc或过程名称的字符串部分,如果您无法确定它是程序还是函数,并找出参数和产生的值。< / p>

例如,CALL apoc.help('date')