软件环境
d2rq-0.8.1
mysql-8.0.13
特别需要
高版本的mysql jar包,如mysql-connector-java-8.0.16.jar
问题及解决办法
- 在mysql中创建数据库及表时,需要注意编码格式。查看及修改编码格式的命令行,请参考查看mysql数据库及表编码格式。
- 将高版本的mysql jar包拷贝到d2rq-0.8.1的lib目录下,否则会因为无法连接到数据库报错。如果出现如下错误,原因是缺少jar包,不是编码的问题。
Database connection to jdbc:mysql:///kg_demo_movie failed (user: root): Unknown initial character set index '255' received from server. Initial client character set can be forced via the 'characterEncoding' property. (E54)
- mac环境下执行生成mapping文件的命令为
generate-mapping -u root -p 12345678 -o kg_demo_movie.ttl jdbc:mysql:///kg_demo_movie
其中-o表示生成的映射文件,jdbc:mysql:///kg_demo_movie是连接到的数据库。
- 生成的mapping文件中需要修改的内容如下:
- 添加自定义的本体前缀,如@prefix : <http://www.kgdemo.com#> .
- 修改文件中自动生成的本体名称为自定义的名称。
- 执行d2r-server.bat或generate-mapping遇到Permission denied错误时,执行命令chmod 777 d2r-server.bat,修改权限。
- 执行d2r-server.bat出现以下错误
No d2rq:Database defined in the mapping (E1)
原因是mapping文件为空,或与数据库连接失败,需要重新生成映射文件。如果映射文件不为空,则为jdbc连接问题,需要检查mapping文件中的数据库连接条件,如用户名、密码等信息的正确性。