5

我下载了 apoc-3.1.0.3-all.jar 并将其放在我的 windows7 Neo4J 3.1.1 系统的插件中。

C:\Users>java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

杀死计算机上的 Neo4J 进程,然后重新启动服务器。

我只看到列出了一个 apoc 程序,其他程序则给出有关缺少程序的错误。Neo4j 日志中没有任何错误迹象。我尝试解锁 jar,然后重新启动服务器。没运气。

我没有问题

Call db.schema()

但是一些简单的事情:

CALL apoc.help("help")

将导致

There is no procedure with the name `apoc.help` registered for this database instance. Please ensure you've spelled the procedure name correctly and that the procedure is properly deployed.

我做错了什么,我想一定是我!)

$call dbms.procedures

apoc.schema.assert  apoc.schema.assert(indexes :: MAP?, constraints :: MAP?) :: (label :: STRING?, key :: LIST? OF STRING?, unique :: BOOLEAN?, action :: STRING?)  (empty)
db.awaitIndex   db.awaitIndex(index :: STRING?, timeOutSeconds = 300 :: INTEGER?) :: VOID   Wait for an index to come online (for example: CALL db.awaitIndex(":Person(name)")).
db.constraints  db.constraints() :: (description :: STRING?)    List all constraints in the database.
db.indexes  db.indexes() :: (description :: STRING?, state :: STRING?, type :: STRING?) List all indexes in the database.
db.labels   db.labels() :: (label :: STRING?)   List all labels in the database.
db.propertyKeys db.propertyKeys() :: (propertyKey :: STRING?)   List all property keys in the database.
db.relationshipTypes    db.relationshipTypes() :: (relationshipType :: STRING?) List all relationship types in the database.
db.resampleIndex    db.resampleIndex(index :: STRING?) :: VOID  Schedule resampling of an index (for example: CALL db.resampleIndex(":Person(name)")).
db.resampleOutdatedIndexes  db.resampleOutdatedIndexes() :: VOID    Schedule resampling of all outdated indexes.
db.schema   db.schema() :: (nodes :: LIST? OF NODE?, relationships :: LIST? OF RELATIONSHIP?)   Show the schema of the data.
dbms.changePassword dbms.changePassword(password :: STRING?) :: VOID    Change the current user's password. Deprecated by dbms.security.changePassword.
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.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:*"
dbms.security.changePassword    dbms.security.changePassword(password :: STRING?) :: VOID   Change the current user's password.
dbms.security.createUser    dbms.security.createUser(username :: STRING?, password :: STRING?, requirePasswordChange = true :: BOOLEAN?) :: VOID    Create a new user.
dbms.security.deleteUser    dbms.security.deleteUser(username :: STRING?) :: VOID   Delete the specified user.
dbms.security.listUsers dbms.security.listUsers() :: (username :: STRING?, flags :: LIST? OF STRING?)   List all local users.
dbms.security.showCurrentUser   dbms.security.showCurrentUser() :: (username :: STRING?, flags :: LIST? OF STRING?) Show the current user.STRING?)
4

4 回答 4

24

使用安装程序(最常见)安装 neo4j 与使用 zip 或 tar 文件安装 Neo4j 之间的记录很少。

(A) 当您使用安装程序安装neo4j 时,安装程​​序会配置neo4j 服务器plugins数据库文件夹(即default.graphdb文件夹下)中查找文件夹。

(B) 当您从 zip 或 tar 文件安装 neo4j 时,neo4j 服务器会plugins在 neo4j 安装文件夹中查找该文件夹(例如,该plugins文件夹应该是 neo4j文件夹的兄弟bin文件夹)。

听起来(A)适用于您。

于 2017-02-21T02:12:34.590 回答
4

据我所知,您必须在 graph.db 目录中创建一个plugins目录,放入 apoc jar,然后重新启动服务器。

否则,您可以指定dbms.directories.pluginsinneo4j.conf文件。

于 2017-02-20T18:56:58.017 回答
3

@cybersam 和 @logisima 的答案是绝对正确的。但是,由于我使用的是 Red Hat Linux,特别是 Oracle-7,所以我还必须向它添加一个额外的步骤。这就是我让它工作的方式

  1. 下载apoc-<version>.jar/var/lib/neo4j/plugins目录
  2. chown neo4j:neo4j apoc-<version>.jar
  3. chmod 755 apoc-<version>.jar
  4. 打开 neo4j.conf/etc/neo4j/neo4j.conf并将其替换为#dbms.security.procedures.whitelist=apoc.coll.*,apoc.load.*dbms.security.procedures.whitelist=apoc.coll.*,apoc.load.*,apoc.*保存。
  5. 通过发出命令重新启动 Neo4j 服务systemctl restart neo4j

注意:确保您下载了正确版本的 apoc jar。我正在使用neo4j version 3.5.5和我正在使用的 apoc jar 版本是apoc-3.5.0.3-all.jar. Alos 确保您dbms.directories.plugins=/var/lib/neo4j/plugins/etc/neo4j/neo4j.conf

于 2019-05-20T19:57:14.783 回答
1

问题是您为 neo4j 使用了 windows 安装程序,这似乎不适用于插件。所以你必须使用运行正常的 neo4j 二进制文件。

这意味着您必须下载用于 Windows 安装的 zip 版本并按照此处的说明进行操作:

http://neo4j.com/docs/operations-manual/current/installation/windows/

编辑:

我想这是你的情况

如果不

也许这个

于 2017-02-18T02:19:31.333 回答