Cypher 初始化器
APOC 允许您在数据库初始化完成后可选地运行 Cypher 命令。这可用于确保在启动时创建索引和约束。
初始化器通过 配置选项 定义,并使用以下命名约定:
apoc.initializer.<database_name>.<identifier> = <some cypher string>
对于每个数据库,所有初始化器字符串都按 <identifier>
排序,并且每个初始化器都在单独的事务中执行。如果给定数据库只有一个初始化器,则可以省略 <identifier>
。
例如,如果您希望:
-
在 System 数据库中创建另一个数据库用户。
-
在默认数据库
neo4j
中为:Person
创建索引。 -
向默认数据库
neo4j
中添加两个:Person
节点。
这通过以下方式实现:
apoc.initializer.system=create user dummy set password 'abc'
apoc.initializer.neo4j.0=create index person_index for (p:Person) on (p.name)
apoc.initializer.neo4j.1=create (:Person{name:'foo'})
apoc.initializer.neo4j.2=create (:Person{name:'bar'})