|| 流程 - 操作手册 - Neo4j 文档

过程

此页面提供了 Neo4j 过程的完整参考。可用的过程取决于您拥有的安装类型。

  • Neo4j Enterprise Edition 提供的程序集比 Neo4j Community Edition 更大。

  • 集群成员拥有在独立模式下不可用的过程。

要检查 Neo4j DBMS 中可用的过程,请使用 Cypher 命令 SHOW PROCEDURES

示例 1. 列出可用的过程
SHOW PROCEDURES

某些过程只能由具有 Admin 权限的用户运行。具体来说,要么是 EXECUTE ADMIN PROCEDURES 权限,要么是 EXECUTE PROCEDURES 和 EXECUTE BOOSTED PROCEDURES 权限。这些过程用 仅限管理员 标记。

有关更多信息,请参阅 EXECUTE 权限部分。

过程列表

表 1. Neo4j 过程
名称 社区版 企业版 注释

db.cdc.current()

否

是

在 5.17 中引入 Beta

db.cdc.earliest()

否

是

在 5.17 中引入 Beta

db.cdc.query()

否

是

在 5.17 中引入 Beta 仅限管理员

db.awaitIndex()

是

是

db.awaitIndexes()

是

是

db.checkpoint()

否

是

db.clearQueryCaches()

是

是

仅限管理员

db.create.setNodeVectorProperty()

是

是

在 5.13 中引入 Beta

db.create.setRelationshipVectorProperty()

是

是

在 5.18 中引入 Beta

db.createLabel()

是

是

db.createProperty()

是

是

db.createRelationshipType()

是

是

db.index.fulltext.awaitEventuallyConsistentIndexRefresh()

是

是

db.index.fulltext.listAvailableAnalyzers()

是

是

db.index.fulltext.queryNodes()

是

是

在 4.1 中,签名更改为 db.index.fulltext.queryNodes(indexName :: STRING, queryString :: STRING, options = {} :: MAP) :: (node :: NODE, score :: FLOAT)。

db.index.fulltext.queryRelationships()

是

是

在 4.1 中,签名更改为 db.index.fulltext.queryRelationships(indexName :: STRING, queryString :: STRING, options = {} :: MAP) :: (relationship :: RELATIONSHIP, score :: FLOAT)。

db.index.vector.createNodeIndex()

是

是

在 5.11 中引入 Beta 直到 5.13 已被替换为:CREATE VECTOR INDEX …​

db.index.vector.queryNodes()

是

是

在 5.11 中引入 Beta 直到 5.13

db.index.vector.queryRelationships()

是

是

在 5.18 中引入

db.info()

是

是

db.labels()

是

是

db.listLocks()

否

是

仅限管理员
在 4.2 中,签名更改为 db.listLocks() :: (mode :: STRING, resourceType :: STRING, resourceId :: INTEGER, transactionId :: STRING)。

db.ping()

是

是

db.prepareForReplanning()

是

是

仅限管理员

db.propertyKeys()

是

是

db.relationshipTypes()

是

是

db.resampleIndex()

是

是

db.resampleOutdatedIndexes()

是

是

db.schema.nodeTypeProperties()

是

是

db.schema.relTypeProperties()

是

是

db.schema.visualization()

是

是

db.stats.clear()

是

是

仅限管理员

db.stats.collect()

是

是

仅限管理员

db.stats.retrieve()

是

是

仅限管理员

db.stats.retrieveAllAnonymized()

是

是

仅限管理员

db.stats.status()

是

是

仅限管理员

db.stats.stop()

是

是

仅限管理员

dbms.checkConfigValue()

否

是

在 5.0 中引入 仅限管理员

dbms.cluster.setAutomaticallyEnableFreeServers()

否

是

在 Neo4j 5.23 之前,此过程只能使用 Admin 权限运行。

dbms.cluster.checkConnectivity()

否

是

仅限管理员

dbms.cluster.cordonServer()

否

是

在 Neo4j 5.23 之前,此过程只能使用 Admin 权限运行。

dbms.cluster.protocols()

否

是

dbms.cluster.secondaryReplicationDisable()

否

是

在 5.6 中引入 仅限管理员

dbms.cluster.switchDiscoveryServiceVersion()

否

是

在 5.22 中引入 仅限管理员

dbms.cluster.showParallelDiscoveryState()

否

是

在 5.22 中引入 仅限管理员

dbms.cluster.deallocateDatabaseFromServer()

否

是

在 5.23 中引入 仅限 SERVER MANAGEMENT 权限

dbms.cluster.deallocateDatabaseFromServers()

否

是

在 5.23 中引入 仅限 SERVER MANAGEMENT 权限

dbms.cluster.deallocateNumberOfDatabases()

否

是

在 5.23 中引入 仅限 SERVER MANAGEMENT 权限

dbms.cluster.reallocateDatabase()

否

是

在 5.23 中引入 仅限 SERVER MANAGEMENT 权限

dbms.cluster.reallocateNumberOfDatabases()

否

是

在 5.23 中引入 仅限 SERVER MANAGEMENT 权限

dbms.cluster.recreateDatabase()

否

是

在 5.24 中引入

dbms.cluster.statusCheck()

否

是

在 5.24 中引入 仅限管理员

dbms.components()

是

是

dbms.info()

是

是

dbms.killConnection()

是

是

dbms.killConnections()

是

是

dbms.listActiveLocks()

是

是

dbms.listCapabilities()

是

是

dbms.listConfig()

是

是

仅限管理员

dbms.listConnections()

是

是

dbms.listPools()

否

是

dbms.quarantineDatabase()

否

是

仅限管理员

dbms.queryJmx()

是

是

dbms.routing.getRoutingTable()

是

是

dbms.scheduler.failedJobs()

否

是

仅限管理员

dbms.scheduler.groups()

否

是

仅限管理员

dbms.scheduler.jobs()

否

是

仅限管理员

dbms.security.clearAuthCache()

否

是

仅限管理员

dbms.setConfigValue()

否

是

仅限管理员 Aura 上不可用

dbms.setDatabaseAllocator()

否

是

仅限管理员

dbms.setDefaultAllocationNumbers()

否

是

仅限管理员

dbms.setDefaultDatabase()

否

是

仅限管理员

dbms.showCurrentUser()

是

是

dbms.showTopologyGraphConfig()

否

是

仅限管理员

genai.vector.listEncodingProviders()

是

是

在 5.19 中引入

genai.vector.encodeBatch()

是

是

在 5.17 中引入

tx.getMetaData()

是

是

tx.setMetaData()

是

是

已弃用过程列表

表 2. 已弃用的 Neo4j 过程
名称 社区版 企业版 注释

cdc.current()

否

是

在 5.13 中引入 Beta 在 5.17 中弃用 已被替换为:db.cdc.current()

cdc.earliest()

否

是

在 5.13 中引入 Beta 在 5.17 中弃用 已被替换为:db.cdc.earliest()

cdc.query()

否

是

在 5.13 中引入 Beta 仅限管理员 在 5.17 中弃用 已被替换为:db.cdc.query()

db.create.setVectorProperty()

是

是

在 5.11 中引入 Beta 在 5.13 中弃用 已被替换为:db.create.setNodeVectorProperty()

dbms.cluster.readReplicaToggle()

否

是

仅限管理员 在 5.6 中弃用。
已被替换为:dbms.cluster.secondaryReplicationDisable()。

dbms.cluster.routing.getRoutingTable()

是

是

在 5.21 中弃用.
已被替换为:dbms.routing.getRoutingTable()。

dbms.cluster.uncordonServer()

否

是

在 5.23 中弃用.
在 Neo4j 5.23 之前,此过程只能使用 Admin 权限运行。
已被替换为 ENABLE SERVER。

dbms.setDatabaseAllocator()

否

是

仅限管理员 在 5.23 中弃用

dbms.upgrade()

是

是

仅限管理员 在 5.9 中弃用

dbms.upgradeStatus()

是

是

仅限管理员 在 5.9 中弃用

已移除过程列表

表 3. Neo4j 5.0 中已移除的过程
名称 社区版 企业版 已被替换为

db.constraints()

是

是

SHOW CONSTRAINTS

db.createIndex()

是

是

CREATE INDEX

db.createNodeKey()

否

是

CREATE CONSTRAINT …​ IS NODE KEY

db.createUniquePropertyConstraint()

是

是

CREATE CONSTRAINT …​ IS UNIQUE

db.indexes()

是

是

SHOW INDEXES

db.indexDetails()

是

是

SHOW INDEXES YIELD*

db.index.fulltext.createNodeIndex()

是

是

CREATE FULLTEXT INDEX …​

db.index.fulltext.createRelationshipIndex()

是

是

CREATE FULLTEXT INDEX …​

db.index.fulltext.drop()

是

是

DROP INDEX …​

db.schemaStatements()

是

是

SHOW INDEXES YIELD * 和 SHOW CONSTRAINTS YIELD *

dbms.cluster.overview()

否

是

SHOW SERVERS

dbms.cluster.quarantineDatabase()

否

是

dbms.quarantineDatabase()

dbms.cluster.role()

否

是

SHOW DATABASES

dbms.cluster.setDefaultDatabase()

否

是

dbms.setDefaultDatabase

dbms.database.state()

是

是

SHOW DATABASES

dbms.functions()

是

是

SHOW FUNCTIONS

dbms.killQueries()

是

是

TERMINATE TRANSACTIONS

dbms.killQuery()

是

是

TERMINATE TRANSACTIONS

dbms.killTransaction()

是

是

TERMINATE TRANSACTIONS

dbms.killTransactions()

是

是

TERMINATE TRANSACTIONS

dbms.listQueries()

是

是

SHOW TRANSACTIONS

dbms.listTransactions()

是

是

SHOW TRANSACTIONS

dbms.procedures()

否

是

SHOW PROCEDURES

dbms.security.activateUser()

否

是

ALTER USER

dbms.security.addRoleToUser()

否

是

GRANT ROLE TO USER

dbms.security.changePassword()

是

是

ALTER CURRENT USER SET PASSWORD

dbms.security.changeUserPassword()

否

是

ALTER USER

dbms.security.createRole()

否

是

CREATE ROLE

dbms.security.createUser()

是

是

CREATE USER

dbms.security.deleteRole()

否

是

DROP ROLE

dbms.security.deleteUser()

是

是

DROP USER

dbms.security.listRoles()

是

是

SHOW ROLES

dbms.security.listRolesForUser()

否

是

SHOW USERS

dbms.security.listUsers()

是

是

SHOW USERS

dbms.security.listUsersForRole()

否

是

SHOW ROLES WITH USERS

dbms.security.removeRoleFromUser()

否

是

REVOKE ROLE FROM USER

dbms.security.suspendUser()

否

是

ALTER USER

过程描述

表 4. cdc.current()

描述

返回可用于从中流式传输更改的当前更改标识符。

签名

cdc.current() :: (id :: STRING)

模式

读取

已被替换为

表 5. cdc.earliest()

描述

返回可用于从中流式传输更改的最早更改标识符。

签名

cdc.earliest() :: (id :: STRING)

模式

读取

已被替换为

表 6. cdc.query()

描述

查询从提供的更改标识符发生的更改。

签名

cdc.query(from = :: STRING, selectors = [] :: LIST<MAP>) :: (id :: STRING, txId :: INTEGER, seq :: INTEGER, metadata :: MAP, event :: MAP)

模式

读取

已被替换为

表 7. db.cdc.current()

描述

返回可用于从中流式传输更改的当前更改标识符。

签名

db.cdc.current() :: (id :: STRING)

模式

读取

表 8. db.cdc.earliest()

描述

返回可用于从中流式传输更改的最早更改标识符。

签名

db.cdc.earliest() :: (id :: STRING)

模式

读取

表 9. db.cdc.query()

描述

查询从提供的更改标识符发生的更改。

签名

db.cdc.query(from = :: STRING, selectors = [] :: LIST<MAP>) :: (id :: STRING, txId :: INTEGER, seq :: INTEGER, metadata :: MAP, event :: MAP)

模式

读取

表 10. db.awaitIndex()

描述

等待索引上线(例如:CALL db.awaitIndex("MyIndex", 300))。

签名

db.awaitIndex(indexName :: STRING, timeOutSeconds = 300 :: INTEGER)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 11. db.awaitIndexes()

描述

等待所有索引上线(例如:CALL db.awaitIndexes(300))。

签名

db.awaitIndexes(timeOutSeconds = 300 :: INTEGER)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 12. db.checkpoint()

描述

启动并等待新的检查点,或等待任何正在进行的检查点完成。

请注意,这会暂时禁用 db.checkpoint.iops.limit 设置以使检查点更快地完成。由于 IO 负载增加,这可能会导致事务吞吐量略有下降。

签名

db.checkpoint() :: (success :: BOOLEAN, message :: STRING)

模式

DBMS

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 13. db.clearQueryCaches()

描述

清除所有查询缓存。

签名

db.clearQueryCaches() :: (value :: STRING)

模式

DBMS

表 14. db.create.setNodeVectorProperty()

描述

以比 Cypher 的 SET 更节省空间的方式在给定节点上设置向量属性。

签名

db.create.setNodeVectorProperty(node :: NODE, key :: STRING, vector :: ANY)

模式

写入

已知问题

来自 SHOW PROCEDURES 的过程签名将向量参数的类型呈现为 ANY 而不是语义上正确的 LIST<INTEGER | FLOAT> 类型。这些类型仍然被强制为 LIST<INTEGER | FLOAT>。

表 15. db.create.setRelationshipVectorProperty()

描述

以比 Cypher 的 SET 更节省空间的方式在给定关系上设置向量属性。

签名

db.create.setRelationshipVectorProperty(relationship :: RELATIONSHIP, key :: STRING, vector :: ANY)

模式

写入

已知问题

来自 SHOW PROCEDURES 的过程签名将向量参数的类型呈现为 ANY 而不是语义上正确的 LIST<INTEGER | FLOAT> 类型。这些类型仍然被强制为 LIST<INTEGER | FLOAT>。

表 16. db.create.setVectorProperty()

描述

以比 Cypher 的 SET 更节省空间的方式在给定节点上设置向量属性。

签名

db.create.setVectorProperty(node :: NODE, key :: STRING, vector :: ANY) :: (node :: NODE)

模式

写入

已被替换为

已知问题

来自 SHOW PROCEDURES 的过程签名将向量参数的类型呈现为 ANY 而不是语义上正确的 LIST<INTEGER | FLOAT> 类型。这些类型仍然被强制为 LIST<INTEGER | FLOAT>。

表 17. db.createLabel()

描述

创建标签

签名

db.createLabel(newLabel :: STRING)

模式

写入

表 18. db.createProperty()

描述

创建属性

签名

db.createProperty(newProperty :: STRING)

模式

写入

表 19. db.createRelationshipType()

描述

创建关系类型

签名

db.createRelationshipType(newRelationshipType :: STRING)

模式

写入

表 20. db.index.fulltext.awaitEventuallyConsistentIndexRefresh()

描述

等待最近提交的事务的更新应用于任何最终一致的全文本索引。

签名

db.index.fulltext.awaitEventuallyConsistentIndexRefresh()

模式

读取

表 21. db.index.fulltext.listAvailableAnalyzers()

描述

列出可用的分析器,全文本索引可以使用这些分析器进行配置。

签名

db.index.fulltext.listAvailableAnalyzers() :: (analyzer :: STRING, description :: STRING, stopwords :: LIST<STRING>)

模式

读取

表 22. db.index.fulltext.queryNodes()

描述

查询给定的全文本索引。返回匹配的节点及其 Lucene 查询分数,按分数排序。options 映射的有效键:值对为

  • skip: <number> — 跳过前 N 个结果。

  • limit: <数字> — 用于限制返回的结果数量。

  • analyzer: <字符串> — 使用指定的分析器作为此查询的搜索分析器。

options 映射和任何键都是可选的。options 映射的一个示例:{skip: 30, limit: 10, analyzer: 'whitespace'}

签名

db.index.fulltext.queryNodes(indexName :: STRING, queryString :: STRING, options = {} :: MAP) :: (node :: NODE, score :: FLOAT)

模式

读取

表 23. db.index.fulltext.queryRelationships()

描述

查询给定的全文索引。返回匹配的关系及其 Lucene 查询得分,按得分排序。options 映射的有效键值对为

  • skip: <number> — 跳过前 N 个结果。

  • limit: <数字> — 用于限制返回的结果数量。

  • analyzer: <字符串> — 使用指定的分析器作为此查询的搜索分析器。

options 映射和任何键都是可选的。options 映射的一个示例:{skip: 30, limit: 10, analyzer: 'whitespace'}

签名

db.index.fulltext.queryRelationships(indexName :: STRING, queryString :: STRING, options = {} :: MAP) :: (relationship :: RELATIONSHIP, score :: FLOAT)

模式

读取

表 24. db.index.vector.createNodeIndex() Beta 版本,直至 5.13

描述

为指定的标签和属性创建命名节点向量索引,并使用给定的向量维度,使用 EUCLIDEAN 或 COSINE 相似度函数。两种相似度函数都区分大小写。使用 db.index.vector.queryNodes 过程查询命名索引。

签名

db.index.vector.createNodeIndex(indexName :: STRING, label :: STRING, propertyKey :: STRING, vectorDimension :: INTEGER, vectorSimilarityFunction :: STRING)

模式

模式

已被替换为

创建向量索引…

表 25. db.index.vector.queryNodes() Beta 版本,直至 5.13

描述

查询给定的向量索引。返回提供给定查询向量的最近邻的数量,以及它们与该查询向量的相似度得分,基于索引配置的相似度函数。相似度得分是 [0, 1] 之间的值;其中 0 表示最不相似,1 表示最相似。

签名

db.index.vector.queryNodes(indexName :: STRING, numberOfNearestNeighbours :: INTEGER, query :: ANY) :: (node :: NODE, score :: FLOAT)

模式

读取

已知问题

来自 SHOW PROCEDURES 的过程签名将向量参数的类型呈现为 ANY 而不是语义上正确的 LIST<INTEGER | FLOAT> 类型。这些类型仍然被强制为 LIST<INTEGER | FLOAT>。

表 26. db.index.vector.queryRelationships()

描述

查询给定的关系向量索引。返回提供给定查询向量的最近邻的数量,以及它们与该查询向量的相似度得分,基于索引配置的相似度函数。相似度得分是 [0, 1] 之间的值;其中 0 表示最不相似,1 表示最相似。

签名

db.index.vector.queryRelationships(indexName :: STRING, numberOfNearestNeighbours :: INTEGER, query :: ANY) :: (relationship :: RELATIONSHIP, score :: FLOAT)

模式

读取

已知问题

来自 SHOW PROCEDURES 的过程签名将向量参数的类型呈现为 ANY 而不是语义上正确的 LIST<INTEGER | FLOAT> 类型。这些类型仍然被强制为 LIST<INTEGER | FLOAT>。

表 27. db.info()

描述

提供有关数据库的信息。

签名

db.info() :: (id :: STRING, name :: STRING, creationDate :: STRING)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 28. db.labels()

描述

根据用户的访问权限列出附加到数据库中节点的所有标签。如果用户无权查看这些标签,则过程将返回空结果。

签名

db.labels() :: (label :: STRING)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 29. db.listLocks()

描述

列出此数据库中的所有锁。

签名

db.listLocks() :: (mode :: STRING, resourceType :: STRING, resourceId :: INTEGER, transactionId :: STRING)

模式

DBMS

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 30. db.ping()

描述

客户端工具可以使用此过程来测试它们是否已正确连接到数据库。此过程在所有数据库中都可用,并且始终返回 true。无法调用此过程可以检测到连接故障。

签名

db.ping() :: (success :: BOOLEAN)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 31. db.prepareForReplanning()

描述

触发索引重采样并等待其完成,然后清除查询缓存。此过程完成后,将使用最新的数据库统计信息来计划查询。

签名

db.prepareForReplanning(timeOutSeconds = 300 :: INTEGER)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 32. db.propertyKeys()

描述

列出数据库中的所有属性键。

签名

db.propertyKeys() :: (propertyKey :: STRING)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 33. db.relationshipTypes()

描述

根据用户的访问权限列出附加到数据库中关系的所有类型。如果用户无权查看这些关系类型,则过程将返回空结果。

签名

db.relationshipTypes() :: (relationshipType :: STRING)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 34. db.resampleIndex()

描述

安排索引的重采样(例如:CALL db.resampleIndex("MyIndex"))。

签名

db.resampleIndex(indexName :: STRING)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 35. db.resampleOutdatedIndexes()

描述

安排所有过时索引的重采样。

签名

db.resampleOutdatedIndexes()

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 36. db.schema.nodeTypeProperties()

描述

以表格形式显示节点的派生属性模式。

签名

db.schema.nodeTypeProperties() :: (nodeType :: STRING, nodeLabels :: LIST<STRING>, propertyName :: STRING, propertyTypes :: LIST<STRING>, mandatory :: BOOLEAN)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 37. db.schema.relTypeProperties()

描述

以表格形式显示关系的派生属性模式。

签名

db.schema.relTypeProperties() :: (relType :: STRING, propertyName :: STRING, propertyTypes :: LIST<STRING>, mandatory :: BOOLEAN)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 38. db.schema.visualization()

描述

根据可用的统计信息可视化数据的模式。每个标签都会返回一个新节点。节点上表示的属性包括:名称(标签名称)、索引(索引列表)和约束(约束列表)。对于所有可能的起始节点和结束节点组合,都会返回给定类型的关系。关系上表示的属性包括:名称(类型名称)。请注意,由于计数存储中提供的信息,这可能包括数据中不存在的其他关系。

签名

db.schema.visualization() :: (nodes :: LIST<NODE>, relationships :: LIST<RELATIONSHIP>)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 39. db.stats.clear()

描述

清除给定数据部分的收集数据。

有效部分为 'QUERIES'

签名

db.stats.clear(section :: STRING) :: (section :: STRING, success :: BOOLEAN, message :: STRING)

模式

读取

表 40. db.stats.collect()

描述

开始收集给定数据部分的数据。

有效部分为 'QUERIES'

签名

db.stats.collect(section :: STRING, config = {} :: MAP) :: (section :: STRING, success :: BOOLEAN, message :: STRING)

模式

读取

表 41. db.stats.retrieve()

描述

检索有关当前数据库的统计数据。

有效部分为 'GRAPH COUNTS', 'TOKENS', 'QUERIES', 'META'

签名

db.stats.retrieve(section :: STRING, config = {} :: MAP) :: (section :: STRING, data :: MAP)

模式

读取

表 42. db.stats.retrieveAllAnonymized()

描述

以匿名形式检索有关当前数据库的所有可用统计数据。

签名

db.stats.retrieveAllAnonymized(graphToken :: STRING, config = {} :: MAP) :: (section :: STRING, data :: MAP)

模式

读取

表 43. db.stats.status()

描述

检索此数据库所有可用收集器守护程序的状态。

签名

db.stats.status() :: (section :: STRING, status :: STRING, data :: MAP)

模式

读取

表 44. db.stats.stop()

描述

停止收集给定数据部分的数据。

有效部分为 'QUERIES'

签名

db.stats.stop(section :: STRING) :: (section :: STRING, success :: BOOLEAN, message :: STRING)

模式

读取

表 45. dbms.checkConfigValue()

描述

此过程提供有关设置值有效性的反馈。它不会更改设置。

此过程返回

  • valid:如果值有效。非动态设置的有效值需要重新启动。

  • message:描述无效原因的消息。如果值为 valid 且设置是动态的,则消息为空。

签名

dbms.checkConfigValue(setting :: STRING, value :: STRING) :: (valid :: BOOLEAN, message :: STRING)

模式

DBMS

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 46. dbms.cluster.setAutomaticallyEnableFreeServers()

描述

使用此方法可以设置是否自动启用空闲服务器。

签名

dbms.cluster.setAutomaticallyEnableFreeServers(autoEnable :: BOOLEAN)

模式

写入

在 Neo4j 5.23 之前,只有具有 Admin 权限的用户才能运行 dbms.cluster.setAutomaticallyEnableFreeServers() 过程。从 Neo4j 5.23 开始,可以使用 SERVER MANAGEMENT 权限运行它。它仍然可以使用 Admin 权限运行,但这应该被视为已弃用。

表 47. dbms.cluster.checkConnectivity()

描述

检查此实例与其他集群成员的连接性。并非所有端口都与所有成员相关。'port-name' 的有效值为:[CLUSTER, RAFT]。

签名

dbms.cluster.checkConnectivity(port-name = null :: STRING, server = null :: STRING) :: (serverId :: STRING, name :: STRING, address :: STRING, mode-constraint :: STRING, port-name :: STRING, port-address :: STRING, result :: STRING)

模式

DBMS

表 48. dbms.cluster.cordonServer()

描述

将拓扑中的服务器标记为不适合新的分配。它不会强制当前分配离开服务器。当您有多个不可用的服务器时,在释放数据库时这很有用。

签名

dbms.cluster.cordonServer(server :: STRING)

模式

写入

在 Neo4j 5.23 之前,只有具有 Admin 权限的用户才能运行 dbms.cluster.cordonServer() 过程。从 Neo4j 5.23 开始,可以使用 SERVER MANAGEMENT 权限运行它。它仍然可以使用 Admin 权限运行,但这应该被视为已弃用。

表 49. dbms.cluster.routing.getRoutingTable()

描述

返回给定数据库的已公布的 bolt 兼容端点,并按每个端点的功能划分。例如,一个端点可以服务读取查询、写入查询和/或将来的 getRoutingTable 请求。

签名

dbms.cluster.routing.getRoutingTable(context :: MAP, database = null :: STRING) :: (ttl :: INTEGER, servers :: LIST<MAP>)

模式

DBMS

表 50. dbms.cluster.protocols()

描述

已安装协议的概述。

签名

dbms.cluster.protocols() :: (orientation :: STRING, remoteAddress :: STRING, applicationProtocol :: STRING, applicationProtocolVersion :: INTEGER, modifierProtocols :: STRING)

模式

DBMS

表 51. dbms.cluster.readReplicaToggle()

描述

切换可以暂停或恢复读取副本(已弃用,建议使用 dbms.cluster.secondaryReplicationDisable)

签名

dbms.cluster.readReplicaToggle(databaseName :: STRING, pause :: BOOLEAN) :: (state :: STRING)

模式

DBMS

已被替换为

它的用途是什么?

您可以执行某个时间点的备份,因为备份将仅包含直到暂停事务拉取的时间点的事务。请按照以下步骤操作

  1. 直接连接到托管辅助模式下数据库的服务器。(Neo4j 驱动程序使用 bolt:// 或使用 HTTP API)。

  2. 暂停指定数据库的事务拉取。

  3. 备份数据库,请参阅备份在线数据库。

如果直接连接到托管辅助模式下数据库的服务器,数据科学家可以在已暂停的特定数据库上执行分析,数据在执行分析时不会意外更改。

此过程只能在已连接服务器上以辅助角色运行的数据库上执行。

暂停数据库 neo4j 的事务拉取
CALL dbms.cluster.readReplicaToggle("neo4j", true)
恢复数据库 neo4j 的事务拉取
CALL dbms.cluster.readReplicaToggle("neo4j", false)
表 52. dbms.cluster.secondaryReplicationDisable()

描述

切换可以暂停或恢复辅助复制过程。

签名

dbms.cluster.secondaryReplicationDisable(databaseName :: STRING, pause :: BOOLEAN) :: (state :: STRING)

模式

DBMS

它的用途是什么?

您可以执行某个时间点的备份,因为备份将仅包含直到暂停事务拉取的时间点的事务。请按照以下步骤操作

  1. 直接连接到托管辅助模式下数据库的服务器。(Neo4j 驱动程序使用 bolt:// 或使用 HTTP API)。

  2. 暂停指定数据库的事务拉取。

  3. 备份数据库,请参阅备份在线数据库。

如果直接连接到托管辅助模式下数据库的服务器,数据科学家可以在已暂停的特定数据库上执行分析,数据在执行分析时不会意外更改。

此过程只能在已连接服务器上以辅助角色运行的数据库上执行。

暂停数据库 neo4j 的事务拉取
CALL dbms.cluster.secondaryReplicationDisable("neo4j", true)
恢复数据库 neo4j 的事务拉取
CALL dbms.cluster.secondaryReplicationDisable("neo4j", false)
表 53. dbms.cluster.uncordonServer()

描述

移除服务器上的隔离,将其恢复为“已启用”。

签名

dbms.cluster.uncordonServer(server :: STRING)

模式

写入

已被替换为

在 Neo4j 5.23 之前,只有具有 Admin 权限的用户才能运行 dbms.cluster.uncordonServer() 过程。从 Neo4j 5.23 开始,可以使用 SERVER MANAGEMENT 权限运行它。它仍然可以使用 Admin 权限运行,但这应该被视为已弃用。

表 54. dbms.cluster.switchDiscoveryServiceVersion()

描述

允许您选择应启动哪个发现服务。可能的值为

  • V1_ONLY — 它仅运行发现服务 v1。

  • V1_OVER_V2 — 它运行发现服务 V1 和发现服务 V2,其中 V1 是主要服务,V2 在后台运行。

  • V2_OVER_V1 — 它同时运行 Discovery Service V1 和 Discovery Service V2,其中 V2 是主服务,V1 在后台运行。

  • V2_ONLY — 它仅运行 Discovery Service V2。

签名

dbms.cluster.switchDiscoveryServiceVersion(mode :: STRING)

模式

DBMS

表 55. dbms.cluster.showParallelDiscoveryState()

描述

比较 Discovery Service V1 和 Discovery Service V2 的状态。

签名

dbms.cluster.showParallelDiscoveryState() :: (mode :: STRING, stateComparison :: STRING, v1ServerCount :: STRING, v2ServerCount :: STRING)

模式

DBMS

表 56. dbms.cluster.deallocateDatabaseFromServer()

描述

从特定服务器释放特定用户数据库。

签名

dbms.cluster.deallocateDatabaseFromServer(server :: STRING, database :: STRING, dryrun = false :: BOOLEAN) :: (database :: STRING, fromServerName :: STRING, fromServerId :: STRING, toServerName :: STRING, toServerId :: STRING, mode :: STRING)

模式

写入

此过程需要 SERVER MANAGEMENT 权限。

表 57. dbms.cluster.deallocateDatabaseFromServers()

描述

从服务器列表中释放特定用户数据库。

签名

dbms.cluster.deallocateDatabaseFromServers(servers :: LIST<STRING>, database :: STRING, dryrun = false :: BOOLEAN) :: (database :: STRING, fromServerName :: STRING, fromServerId :: STRING, toServerName :: STRING, toServerId :: STRING, mode :: STRING)

模式

写入

此过程需要 SERVER MANAGEMENT 权限。

表 58. dbms.cluster.deallocateNumberOfDatabases()

描述

从特定服务器释放一定数量的用户数据库。

签名

dbms.cluster.deallocateNumberOfDatabases(server :: STRING, number :: INTEGER, dryrun = false :: BOOLEAN) :: (database :: STRING, fromServerName :: STRING, fromServerId :: STRING, toServerName :: STRING, toServerId :: STRING, mode :: STRING)

模式

写入

此过程需要 SERVER MANAGEMENT 权限。

表 59. dbms.cluster.reallocateDatabase()

描述

重新分配特定数据库。

签名

dbms.cluster.reallocateDatabase(database :: STRING, dryrun = false :: BOOLEAN) :: (database :: STRING, fromServerName :: STRING, fromServerId :: STRING, toServerName :: STRING, toServerId :: STRING, mode :: STRING)

模式

写入

此过程需要 SERVER MANAGEMENT 权限。

表 60. dbms.cluster.reallocateNumberOfDatabases()

描述

重新分配指定数量的用户数据库。

签名

dbms.cluster.reallocateNumberOfDatabases(number :: INTEGER, dryrun = false :: BOOLEAN) :: (database :: STRING, fromServerName :: STRING, fromServerId :: STRING, toServerName :: STRING, toServerId :: STRING, mode :: STRING)

模式

写入

此过程需要 SERVER MANAGEMENT 权限。

表 61. dbms.cluster.recreateDatabase()

描述

重新创建数据库,同时保留所有 RBAC 设置。此过程会启动一个进程,完成后将同步并启动集群中的所有数据库实例。

签名

dbms.cluster.recreateDatabase(database :: STRING, options = {} :: MAP)

模式

写入

表 62. dbms.cluster.statusCheck()

描述

执行 Raft 状态检查。

签名

dbms.cluster.statusCheck(databases :: LIST<STRING>, timeoutMilliseconds = null :: INTEGER) :: (database :: STRING, serverId :: STRING, serverName :: STRING, address :: STRING, replicationSuccessful :: BOOLEAN, memberStatus :: STRING, recognisedLeader :: STRING, recognisedLeaderTerm :: INTEGER, requester :: BOOLEAN, error :: STRING)

模式

DBMS

表 63. dbms.components()

描述

列出 DBMS 组件及其版本。

签名

dbms.components() :: (name :: STRING, versions :: LIST<STRING>, edition :: STRING)

模式

DBMS

表 64. dbms.info()

描述

提供有关 DBMS 的信息。

签名

dbms.info() :: (id :: STRING, name :: STRING, creationDate :: STRING)

模式

DBMS

表 65. dbms.killConnection()

描述

终止具有给定连接 ID 的网络连接。

签名

dbms.killConnection(id :: STRING) :: (connectionId :: STRING, username :: STRING, message :: STRING)

模式

DBMS

表 66. dbms.killConnections()

描述

终止具有给定连接 ID 的所有网络连接。

签名

dbms.killConnections(ids :: LIST<STRING>) :: (connectionId :: STRING, username :: STRING, message :: STRING)

模式

DBMS

表 67. dbms.listActiveLocks()

描述

列出为使用给定查询 ID 执行查询的事务授予的活动锁请求。

签名

dbms.listActiveLocks(queryId :: STRING) :: (mode :: STRING, resourceType :: STRING, resourceId :: INTEGER)

模式

DBMS

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 68. dbms.listCapabilities()

描述

列出功能。

签名

dbms.listCapabilities() :: (name :: STRING, description :: STRING, value :: ANY)

模式

DBMS

表 69. dbms.listConfig()

描述

列出 Neo4j 当前活动的配置设置。

签名

dbms.listConfig(searchString = :: STRING) :: (name :: STRING, description :: STRING, value :: STRING, dynamic :: BOOLEAN, defaultValue :: STRING, startupValue :: STRING, explicitlySet :: BOOLEAN, validValues :: STRING)

模式

DBMS

表 70. dbms.listConnections()

描述

列出此实例中用户可见的所有已接受的网络连接。

签名

dbms.listConnections() :: (connectionId :: STRING, connectTime :: STRING, connector :: STRING, username :: STRING, userAgent :: STRING, serverAddress :: STRING, clientAddress :: STRING)

模式

DBMS

表 71. dbms.listPools()

描述

列出此实例中用户可见的所有内存池(包括子池)。

签名

dbms.listPools() :: (pool :: STRING, databaseName :: STRING, heapMemoryUsed :: STRING, heapMemoryUsedBytes :: STRING, nativeMemoryUsed :: STRING, nativeMemoryUsedBytes :: STRING, freeMemory :: STRING, freeMemoryBytes :: STRING, totalPoolMemory :: STRING, totalPoolMemoryBytes :: STRING)

模式

DBMS

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 72. dbms.quarantineDatabase()

描述

将数据库置于隔离状态或将其从隔离状态中移除。

签名

dbms.quarantineDatabase(databaseName :: STRING, setStatus :: BOOLEAN, reason = No reason given :: STRING) :: (databaseName :: STRING, quarantined :: BOOLEAN, result :: STRING)

模式

DBMS

表 73. dbms.queryJmx()

描述

根据域和名称查询 JMX 管理数据。例如,使用 : 查找所有 JMX bean。

签名

dbms.queryJmx(query :: STRING) :: (name :: STRING, description :: STRING, attributes :: MAP)

模式

DBMS

表 74. dbms.routing.getRoutingTable()

描述

返回给定数据库的已发布 Bolt 兼容端点,按每个端点的功能划分。例如,端点可以服务读取查询、写入查询和/或将来的 getRoutingTable 请求。

签名

dbms.routing.getRoutingTable(context :: MAP, database = null :: STRING) :: (ttl :: INTEGER, servers :: LIST<MAP>)

模式

DBMS

表 75. dbms.setDatabaseAllocator()

描述

使用此方法,您可以设置负责选择托管数据库的服务器的分配器。

签名

dbms.setDatabaseAllocator(allocator :: STRING)

模式

写入

表 76. dbms.setDefaultAllocationNumbers()

描述

使用此方法,您可以设置主服务器和从服务器的默认数量。

签名

dbms.setDefaultAllocationNumbers(primaries :: INTEGER, secondaries :: INTEGER)

模式

写入

表 77. dbms.setDefaultDatabase()

描述

将默认数据库更改为提供的 value。数据库必须存在,并且必须停止旧的默认数据库。

签名

dbms.setDefaultDatabase(databaseName :: STRING) :: (result :: STRING)

模式

写入

表 78. dbms.scheduler.failedJobs()

描述

列出失败的作业运行。历史数据量有限制。

签名

dbms.scheduler.failedJobs() :: (jobId :: STRING, group :: STRING, database :: STRING, submitter :: STRING, description :: STRING, type :: STRING, submitted :: STRING, executionStart :: STRING, failureTime :: STRING, failureDescription :: STRING)

模式

DBMS

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 79. dbms.scheduler.groups()

描述

列出数据库内部作业调度程序中处于活动状态的作业组。

签名

dbms.scheduler.groups() :: (group :: STRING, threads :: INTEGER)

模式

DBMS

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 80. dbms.scheduler.jobs()

描述

列出数据库内部作业调度程序中所有处于活动状态的作业。

签名

dbms.scheduler.jobs() :: (jobId :: STRING, group :: STRING, submitted :: STRING, database :: STRING, submitter :: STRING, description :: STRING, type :: STRING, scheduledAt :: STRING, period :: STRING, state :: STRING, currentStateDescription :: STRING)

模式

DBMS

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 81. dbms.security.clearAuthCache()

描述

清除身份验证和授权缓存。

签名

dbms.security.clearAuthCache()

模式

DBMS

表 82. dbms.setConfigValue()

描述

更新给定的设置值。传递空值会导致删除配置的值并回退到默认值。如果服务器重新启动,更改将不会持久保存并会丢失。在集群环境中,dbms.setConfigValue 仅影响其运行所在的集群成员。

签名

dbms.setConfigValue(setting :: STRING, value :: STRING)

模式

DBMS

表 83. dbms.showCurrentUser()

描述

显示当前用户。

签名

dbms.showCurrentUser() :: (username :: STRING, roles :: LIST<STRING>, flags :: LIST<STRING>)

模式

DBMS

表 84. dbms.showTopologyGraphConfig()

描述

使用此方法可以显示拓扑图的配置。

签名

dbms.showTopologyGraphConfig() :: (allocator :: STRING, defaultPrimariesCount :: INTEGER, defaultSecondariesCount :: INTEGER, defaultDatabase :: STRING, autoEnableFreeServers :: BOOLEAN)

模式

读取

表 85. dbms.upgrade()

描述

如果系统数据库模式不是当前模式,则升级它。

签名

dbms.upgrade() :: (status :: STRING, upgradeResult :: STRING)

模式

写入

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 86. dbms.upgradeStatus()

描述

报告系统数据库子图模式的当前状态。

签名

dbms.upgradeStatus() :: (status :: STRING, description :: STRING, resolution :: STRING)

模式

读取

此过程不被认为是从多个线程安全运行。因此,它不受并行运行时(在 Neo4j 5.13 中引入)的支持。有关更多信息,请参阅 Cypher 手册→并行运行时。

表 87. genai.vector.listEncodingProviders()

描述

列出可用的向量嵌入提供程序。

签名

genai.vector.listEncodingProviders() :: (name :: STRING, requiredConfigType :: STRING, optionalConfigType :: STRING, defaultConfig :: MAP)

模式

默认

表 88. genai.vector.encodeBatch()

描述

使用命名提供程序将给定的资源批次编码为向量。对于给定资源 LIST 中的每个元素,这将返回

  • 该 LIST 中的相应“索引”,

  • 原始“资源”元素本身,

  • 以及编码的“向量”。

签名

genai.vector.encodeBatch(resources :: LIST<STRING>, provider :: STRING, configuration = {} :: ANY) :: (index :: INTEGER, resource :: STRING, vector :: ANY)

模式

默认

有关更多信息,请参阅Cypher 手册→生成一批嵌入。

已知问题

来自 SHOW PROCEDURES 的过程签名将向量参数的类型呈现为 ANY 而不是语义上正确的 LIST<INTEGER | FLOAT> 类型。这些类型仍然被强制为 LIST<INTEGER | FLOAT>。

表 89. tx.getMetaData()

描述

提供附加的事务元数据。

签名

tx.getMetaData() :: (metadata :: MAP)

模式

DBMS

表 90. tx.setMetaData()

描述

将数据映射附加到事务。列出查询时将打印数据,并将数据插入查询日志。

签名

tx.setMetaData(data :: MAP)

模式

DBMS

© . This site is unofficial and not affiliated with Neo4j, Inc.