【问题标题】:Generate mapping for SQL database to RDF with D2RQ使用 D2RQ 生成 SQL 数据库到 RDF 的映射
【发布时间】:2013-10-04 09:46:26
【问题描述】:

我正在尝试使用 D2RQ(在 Mac 上)将 MySQL 数据库从 MAMP 转换为 RDF 图。我已经解压了 d2rq 服务器,并从终端运行了生成映射工具,如下所示:

sh generate-mapping -o mapping.ttl -u root -p passw jdbc:mysql://localhost/eurocup

但是它给出了一个错误,说它无法连接到数据库:

Database connection to jdbc:mysql://localhost/eurocup failed (user: root): Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. (E54)

谁能帮我解决这个问题?我对 RDF 和整个语义网非常陌生,甚至对命令行也是如此。欢迎提出另一种将 SQL 数据库(或转储)转换为 RDF 图的方法!

【问题讨论】:

  • 根据错误消息,我怀疑该错误与RDF 本身有关,但它与您的数据库安装或配置有关。此外,您的问题的最后一点(关于替代品)可能与 StackOverflow 无关:“要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是无关紧要的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,描述问题以及迄今为止为解决问题所做的工作。”如果您正在寻找替代品,您可能会在answers.semanticweb.com 上获得更好的运气。
  • 是否可以通过其他方式连接数据库?即,如果您只是要对它进行查询,您能否以您想要的方式连接到数据库?
  • 感谢您的回答Joshua,确实似乎是连接错误。使用 PHP 脚本或使用 PhpMyAdmin 的查询使用 localhost(或 127.0.0.1)使用相同的用户名和密码进行正常连接。
  • 我发现 d2r 对参数的顺序很挑剔,你能试试这样运行吗?: generate-mapping -u root -p passw -o mapping.ttl jdbc:mysql://localhost /欧洲杯
  • 我在尝试不同的订单时遇到同样的错误。

标签: mysql sql rdf mamp d2rq


【解决方案1】:

使用 D2RQ 命令在 mysqldb 中生成映射文件和 RDF。

脚本命令语法:

./generate-mapping -u userName -p Password -o /mapping file save path directory/fileName.ttl mysqldriver/databaseName

示例:

./generate-mapping -u root -p root -o /home/bigtapp/Documents/d2rqgenerate_mapping/mapfile.ttl jdbc:mysql://localhost:3306/d2rq

用户名密码:u root -p root -o 文件保存路径:/home/tapp/Documents/d2rqgenerate_mapping/mapfile.ttl sql驱动:jdbc:mysql://localhost:3306/d2rq 这里 d2rq :数据库名

RDF 创建命令:

dump-rdf -f RDF/XML -b localhost:3306 -o /home/tapp/Documents/d2rqgenerate_mapping/dumpfile.rdf /home/bigtapp/Documents/d2rqgenerate_mapping/mapfile.ttl

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-21
    • 1970-01-01
    • 1970-01-01
    • 2012-09-15
    • 1970-01-01
    • 2017-05-01
    • 2010-11-20
    相关资源
    最近更新 更多