无法使用apoc.jdbc和Neo4J Community Edition 3.0.4连接到MySQL

时间:2016-12-15 11:46:17

标签: jdbc neo4j

我在Mac上使用Neo4J Community Edition 3.0.4。在plugins文件夹中,我有apoc和Java的mysql连接器。

我想使用JDBC在localhost上连接到MySQL。

我使用。

在.neo4j.conf文件中创建了一个别名
apoc.jdbc.mysql_basemodel.url=jdbc:mysql://localhost:3306/basemodel?user=fred&password=pw

在浏览器中,我尝试使用以下方法测试连接:

CALL apoc.load.jdbc("mysql_basemodel","t_object") YIELD row
RETURN count(*);

但得到错误

  

无法调用程序apoc.load.jdbc:由以下原因引起:> java.lang.RuntimeException:没有指定apoc.jdbc.mysql_basemodel.url jdbc url

几乎就像Neo4J没有读取定义了别名的.neo4j.conf文件一样。

但是,如果我跳过别名并放入完整的连接字符串,则会收到错误:

  

无法调用过程apoc.load.jdbc:引起:java.lang.RuntimeException:无法执行SQL语句SELECT * FROM t_object。   错误:   没有为jdbc找到合适的驱动程序:mysql:// localhost:3306 / basemodel?user = ...

这似乎表明找不到mysql JDBC驱动程序。

我做错了什么?

2 个答案:

答案 0 :(得分:1)

首先需要为MySQL注册JDBC驱动程序:

CALL apoc.load.driver("com.mysql.jdbc.Driver");

一旦您注册了MySQL JDBC驱动程序,使用apoc.load.jdbc的语句将在连接到MySQL时使用此驱动程序。

文档here中提供了更多信息。

答案 1 :(得分:0)

下载mysql JDBC驱动程序(例如从http://mvnrepository.com/artifact/mysql/mysql-connector-java)并将其放入%ANDROID_SDK_HOME%\ndk-bundle\prebuilt\windows-x86_64\bin 文件夹 - 与apoc的jar文件相同的位置。